Django お試し1

さくっと設定します。

django-admin.py startproject mysite
これでディレクトリができる。
中にいろいろ入ってて manage.py ってのがお役立ちスクリプトで、
さらに mysiteディレクトリが、全体の設定とかを入れておく場所っぽい(多分

mysiteディレクトリに1段入って
python manage.py runserver
を実行すると、お試しサーバーが起動する。
http://localhost:8000/
にアクセスして、何やら動いてるっぽいのを確認。

次に、setting.py を編集します。編集するのは以下の箇所。
まずファイルの先頭で
import os
PROJECT_ROOT, SETTINGS_DIR = os.path.split(os.path.dirname(__file__))

データベース
DATABASES = {
   'default': {
       'ENGINE': 'django.db.backends.sqlite3', # Add 'postgresql_psycopg2', 'mysql', 'sqlite3' or 'oracle'.
       'NAME': '/home/user/django-projects/mysite/db/sqlite3',                      # Or path to database file if using sqlite3.
       'USER': '',                      # Not used with sqlite3.
       'PASSWORD': '',                  # Not used with sqlite3.
       'HOST': '',                      # Set to empty string for localhost. Not used with sqlite3.
       'PORT': '',                      # Set to empty string for default. Not used with sqlite3.
   }
}

タイムゾーン
TIME_ZONE = 'Asia/Tokyo'

言語
LANGUAGE_CODE = 'ja'

テンプレートディレクトリ
TEMPLATE_DIRS = {
   # ......
   os.path.join(PROJECT_ROOT, 'templates')
}

画像、CSS、JS用ディレクトリ
STATICFILES_DIRS = (
   # Put strings here, like "/home/html/static" or "C:/www/django/static".
   # Always use forward slashes, even on Windows.
   # Don't forget to use absolute paths, not relative paths.
   os.path.join(PROJECT_ROOT, 'static'),
)

他にも変更するべき箇所はあるかもしれないけど、
とりあえず、把握してる範囲で変更するのは以上の箇所。
は指定必須みたい。アプリケーションごとにデフォルトのテンプレートディレクトリは無い様子(ドキュメントには見当たらない)。複数アプリケーションで共有するので、ディレクトリ内にさらにアプリケーション名でディレクトリを作って、そこに保存しておけばいい。


テンプレートディレクトリ, STATICFILES_DIRS は指定しなくても構わない。あとでApplicationを作成しその中に templates, static ディレクトリを作って、そこに入れておけば自動で取り込まれる。ちなみに同名のファイルがある場合、一番新しいファイルで上書きされたり、TEMPLATE_DIRS, STATICFILES_DIRSのものが優先されたりややこしいことになるので、自分はTEMPLATE_DIR, STATICFILES_DIRSにディレクトリを指定し、そこにすべて置くことにしている。テンプレートディレクトリと同様に、中でアプリケーションごとにファイル名を分けたりディレクトリを分けたりすればいい。

DBは、お試しということでSQLiteを使うように設定している。

DBを作る。ディレクトリがないとエラるので先に作成。
mkdir db
python manage.py syncdb

中身が見たかったら
sudo apt-get install sqlite3
sqlite3 db/sqlite3
.tables
こんな感じ
sqlite> .tables
auth_group                  auth_user_user_permissions
auth_group_permissions      django_content_type       
auth_permission             django_session            
auth_user                   django_site               
auth_user_groups          
sqlite> 
テーブルが9つできてる。
最終更新:2013年03月08日 22:22
ツールボックス

下から選んでください:

新しいページを作成する
ヘルプ / FAQ もご覧ください。