django スタート

まずcdでコードを置きたい場所までいって

django-admin.py startproject プロジェクト名

これでディレクトリができました

startproject が何を作成したかをみてみましょう:

mysite/
__init__.py
manage.py
settings.py
urls.py

ファイルはそれぞれ以下のような役割を持っています:

* __init__.py: このディレクトリが Python パッケージであることを Python に知らせるための空のファイルです。(Python の初心者は、 Python の公式ドキュメントの (パッケージの詳しい説明 を読んで下さい。)
* manage.py: Django プロジェクトに対する様々な操作を行うためのコマンドラインユーティリティです。詳しくは django-admin.py と manage.py を参照してください。
* settings.py: Django プロジェクトの設定ファイルです。設定の仕組みは Django の設定 を参照してください。
* urls.py: Django プロジェクトの URL 宣言、いうなれば Django 化サイトにおける「目次」に相当します。 URL ディスパッチャ を参照してください。

Database の設定¶

それでは、 settings.py を編集しましょう。

MANAGERS =ADMINS

import os
BACE_DIR = os.path.abspath(os.path.dirname(__file__))

DATABASE_ENGINE = 'splite3'
DATABASE_NAME = os.path.join(BASE_DIR, 'data.db')

にします。


デフォルトでは INSTALLED_APPS には以下のアプリケーションが入っています。これらのアプリケーションはいずれも Django に付属のものです:

* django.contrib.auth -- 認証システムです。
* django.contrib.contenttypes -- コンテンツタイプフレームワークです。
* django.contrib.sessions -- セッションフレームワークです。
* django.contrib.sites -- 一つの Django で複数のサイトを管理するためのフレームワークです。

これらは、よくある状況で便利なのでデフォルトで付属しています。

python manage.py syncdb

syncdb コマンドは INSTALLED_APPS 設定を探し、 settings.py のデータベース設定に従ってデータベース上に必要なテーブルを作成します。

setting.pyの設定を終えてデータベースを設定し終わったら次はモデルを作りましょう。

アプリケーションを作成するには、 mysite ディレクトリの下に入って、以下のようなコマンド:

python manage.py startapp polls

を入力します。このコマンドは polls というディレクトリを作成し、その中に以下のようにファイルを配置します:

polls/
__init__.py
models.py
views.py

このディレクトリ構造こそが、 poll アプリケーションの全体像です。

これから開発する簡単な poll アプリケーションでは、投票項目 (poll) と選択肢 (choice) の二つのモデルを作成します。 poll には質問事項 (question) と公開日 (publication date) の情報があります。 choice には選択肢のテキストと投票数 (vote) という二つのフィールドがあります。各 choice は一つの poll に関連づけられることになります。

Django では、こうした概念を簡単な Python クラスで表現できます。 polls/models.py ファイルを以下のように編集してください: