Python

【Python】第8章第3回:Djangoの基本とプロジェクト作成

Djangoを使ったWeb開発の基礎を学び、最初のプロジェクトを構築する方法を解説します。大規模なアプリケーションにも対応可能なフレームワークを始めましょう!

0. 記事の概要

この記事を読むメリット

  • Djangoの基本を理解:Djangoの特徴や用途を学べます。
  • プロジェクト作成の手順を習得:環境構築からアプリケーション作成までの流れを理解できます。
  • 実務に応用可能:大規模なWebアプリケーションを作成するための基礎が身に付きます。

この記事で学べること

  • Djangoの基本的な仕組みと特徴
  • Djangoプロジェクトの作成手順
  • 簡単なアプリケーションの構築方法

1. Djangoとは何か?

1.1 Djangoの概要

Djangoは、Pythonを基盤としたフルスタックWebフレームワークです。以下の特徴があります。

  • オールインワン: 認証、管理画面、データベース操作などが標準搭載。
  • スケーラビリティ: 大規模なプロジェクトに対応可能。
  • セキュリティ: XSSやSQLインジェクション対策が組み込まれている。

1.2 Djangoのインストール

# Djangoのインストール
pip install django

2. Djangoプロジェクトの作成手順

2.1 プロジェクトの作成

# Djangoプロジェクトの作成コマンド
django-admin startproject myproject
cd myproject

2.2 アプリの作成

# Djangoアプリの作成コマンド
python manage.py startapp myapp

2.3 サーバーの起動

# ローカルサーバーの起動
python manage.py runserver
動作解説
  • プロジェクト作成: プロジェクト全体の基盤を生成。
  • アプリ作成: 機能ごとに分離されたモジュールを作成。
  • サーバー起動: ローカル環境でアプリケーションを実行。

3. Djangoビューの作成

3.1 シンプルなビューの例

# views.pyのコード例
from django.http import HttpResponse

def home(request):
    return HttpResponse("こんにちは、Django!")

3.2 ルーティング設定

# urls.pyのコード例
from django.contrib import admin
from django.urls import path
from . import views

urlpatterns = [
    path('admin/', admin.site.urls),
    path('', views.home, name='home'),
]
動作解説
  • views.py: リクエストを処理し、レスポンスを返す機能を定義。
  • urls.py: URLパスと対応するビュー関数をマッピング。

4. 練習問題

以下の課題に挑戦してみましょう。

  1. Djangoプロジェクトに新しいアプリを追加し、「/about」というURLを作成してください。
  2. ビューで「HTML」を返すように実装してください。
  3. 404エラーページをカスタマイズしてください。

5. 練習問題の解答と解説

問1の解答例

# views.pyに新しいビューを追加
def about(request):
    return HttpResponse("このページはAboutページです。")

問2の解答例

# HTMLを返すビューの例
def home(request):
    return HttpResponse("<h1>こんにちは、Django!</h1>")

問3の解答例

# カスタム404エラーハンドラー
def custom_404(request, exception):
    return HttpResponse("ページが見つかりませんでした。", status=404)

6. まとめ

本記事では、Djangoの基本とプロジェクト作成の手順を学びました。次は、さらに高度な機能に挑戦してみましょう!