ここではDjangoを扱う上での基本的な事項を記載します。ディレクトリ構成やモジュール、コマンドなど、Djangoを用いてWebアプリケーションを作成するために最低限必要なものです。
※本サイトはDjango2.0を対象としていますので、予めご了承ください。
Djangoプロジェクトの作成コマンド
Djangoにはプロジェクトという単位があり、まずはこれを作成する必要があります(プロジェクトは1つのWebアプリケーションと考えてください)。プロジェクト名は任意の名前で構いません。ここでは例としてsportsというプロジェクト名で作成し、C:¥pythonディレクトリ配下にプロジェクトを作成するものとします。
まずはC:¥pythonへ移動し、プロジェクト作成コマンドを入力しましょう。基本的な書式は以下の通りです。
django-admin startproject <project_name>
Windowsの場合はdjango-admin.pyがPythonのインストールディレクトリ直下のScriptsへ配置されているので、それを利用します。Windows版の書式は以下の通りです。
python <python_install_dir>¥Scripts¥django-admin.py startproject <project_name>
たとえばPythonがC:¥python36へインストールされており、今回作成するプロジェクトをsportsとする場合は次のようになります。
python C:¥python36¥Scripts¥django-admin.py startproject sports
プロジェクト作成コマンドを実行後、同ディレクトリには以下のようにファイル・ディレクトリが作成されます。
- c:
- python
- sports
- sports
- __init__.py
- settings.py
- urls.py
- wsgi.py
- manage.py
プロジェクトファイルの概要
作成されたファイル・ディレクトリの概要は以下の通りです。
- sports(C:¥python¥sports)
- プロジェクトのルートディレクトリとなります。このディレクトリを基準としてファイルパス等の設定を行うとよいでしょう。startprojectで指定された名称でディレクトリで作成されますが、適当な名称へ変更しても構いません。
- __init__.py
- 詳細はパッケージを参照してください。Pythonのバージョンによっては削除しても問題なさそうにも見えますが、予期しない挙動を起こす事があるため削除してはなりません。
- settings.py
- Djangoプロジェクトの設定ファイルです。さまざまな設定値を元に動作させることができ、環境によって設定ファイルを分けることも可能です。
- urls.py
- とあるURLでアクセスした時にどういった処理を行うかを定義するファイルです。ここに処理そのものを記述するわけではなく、関数などと紐づけを行い、そこへ処理を記述していきます。
- wsgi.py
- 一部のケースを除き、あまり編集する機会はありません。本サイトでは割愛します。
- manage.py
- Djangoプロジェクト上でさまざまな命令を実行することができるユーティリティーです。利用する機会はかなり多いでしょう。
テストサーバーの起動
この時点ですでにDjangoのWebアプリケーションとして最低限の要件を満たしています。manage.pyファイルがあるディレクトリへ移動してから、次のコマンドを入力してみましょう。
python manage.py runserver
実行すると次のように表示され、リクエストの待ち受け状態となります。メッセージにはhttp://127.0.0.1:8000/と出力されるので、WebブラウザでそのURLへアクセスしてみましょう。
… 中略 … Starting development server at http://127.0.0.1:8000/ Quit the server with CTRL-BREAK.
下記のようにDjangoのWebアプリケーションが動作していることを示す画面が表示されます。これでアプリケーションを作成する準備が整いました。
※Djangoのバージョンによって表示される画面は異なります。