Django が最初のプロジェクトを作成する


この章では、Django 管理ツールと、Django を使用してプロジェクトを作成する方法を紹介します。最初のプロジェクトでは、HelloWorld を使用してプロジェクトをコマンドします。


Django 管理ツール

Django をインストールすると、管理ツール django-admin.py が利用できるようになります。 django-admin.py を使用してプロジェクトを作成できます:

django-admin.py のコマンドの概要を見てみましょう:

[root@solar ~]# django-admin.py
Usage: django-admin.py subcommand [options] [args]

Options:
  -v VERBOSITY, --verbosity=VERBOSITY
                        Verbosity level; 0=minimal output, 1=normal output,
                        2=verbose output, 3=very verbose output
  --settings=SETTINGS   The Python path to a settings module, e.g.
                        "myproject.settings.main". If this isn't provided, the
                        DJANGO_SETTINGS_MODULE environment variable will be
                        used.
  --pythonpath=PYTHONPATH
                        A directory to add to the Python path, e.g.
                        "/home/djangoprojects/myproject".
  --traceback           Raise on exception
  --version             show program's version number and exit
  -h, --help            show this help message and exit

Type 'django-admin.py help <subcommand>' for help on a specific subcommand.

Available subcommands:

[django]
    check
    cleanup
    compilemessages
    createcachetable
……省略部分……

最初のプロジェクトを作成します

django-admin.py を使用してHelloWorld プロジェクト:

django-admin.py startproject HelloWorld

作成が完了すると、プロジェクトのディレクトリ構造を表示できます:

[root@solar ~]# cd HelloWorld/
[root@solar HelloWorld]# tree
.
|-- HelloWorld
|   |-- __init__.py
|   |-- settings.py
|   |-- urls.py
|   `-- wsgi.py
`-- manage.py

ディレクトリの説明:

  • HelloWorld: プロジェクトのコンテナ。

  • manage.py: さまざまな方法でこの Django プロジェクトと対話できる便利なコマンド ライン ツール。

  • HelloWorld/__init__.py: ディレクトリが Python パッケージであることを Python に伝える空のファイル。

  • HelloWorld/settings.py: この Django プロジェクトの設定/構成。

  • HelloWorld/urls.py: この Django プロジェクトの URL 宣言。Django を利用した Web サイトの「ディレクトリ」。

  • HelloWorld/wsgi.py: プロジェクトを実行するための WSGI 互換 Web サーバーへのポータル。

次に、HelloWorld ディレクトリに入り、次のコマンドを入力してサーバーを起動します。

python manage.py runserver 0.0.0.0:8000

0.0.0.0 により、他のコンピューターが開発サーバーに接続できます。8000 はポート番号です。指定しない場合、ポート番号はデフォルトの 8000 になります。

ブラウザにサーバーの IP とポート番号を入力します。正常に起動すると、出力は次のようになります:

1039.jpg

ビューと URL の構成

前に作成した HelloWorld ディレクトリに新しい view.py ファイルを作成します。ディレクトリに移動し、コードを入力します:

from django.http import HttpResponse

def hello(request):
	return HttpResponse("Hello world ! ")

次に、URL と view 関数をバインドします。 urls.py ファイルを開き、元のコードを削除し、次のコードをコピーして urls.py ファイルに貼り付けます:

from django.conf.urls import *
from HelloWorld.view import hello

urlpatterns = patterns("",
	('^hello/$', hello),
)

全体のディレクトリ構造は次のとおりです:

[root@solar HelloWorld]# tree
.
|-- HelloWorld
|   |-- __init__.py
|   |-- __init__.pyc
|   |-- settings.py
|   |-- settings.pyc
|   |-- urls.py              # url 配置
|   |-- urls.pyc
|   |-- view.py              # 添加的视图文件
|   |-- view.pyc             # 编译后的视图文件
|   |-- wsgi.py
|   `-- wsgi.pyc
`-- manage.py

完了後、Django 開発サーバーを起動し、開きますブラウザでアクセスしてください:

1040.jpg

注: プロジェクト内のコードに変更があった場合、サーバーはコードの変更を自動的に監視し、自動的にリロードするため、既にサーバーを起動している場合は、再読み込みする必要はありません。手動で再起動してください。