Djangoはプロジェクトを作っておいて、アプリ毎に細かく機能を分けて、プロジェクトで統合するみたいな形式を取るみたい。なのでまずはDjangoプロジェクトを作成

$ django-admin.py startproject myproject

とすると、カレントフォルダにmyprojectフォルダが出来る。ファイル構成を見ると、

myproject/
  manage.py
  myproject/
    __init__.py
    settings.py
    urls.py
    wsgi.py

となっている。myprojectフォルダ内のファイルに共通設定を書くという感じになりそうだ。PostgreSQLに接続するので、settings.pyを修正

DATABASES = {
    'default': {
    'ENGINE': 'django.db.backends.postgresql_psycopg2',
    'NAME': 'hoge',
    'USER': 'username',
    'PASSWORD': '******',
    'HOST': 'hostname or ip',
    'PORT': '5432',
    }

あと、psycopg2をインストールしていないので

$ sudo pip install psycopg2

とやって

$ cd myproject
$ python manage.py syncdb

とやると、hogeに色々テーブルが出来る。INSTALLED_APPSに書いてあるアプリに関するテーブルみたい。初期状態では以下のアプリが入るみたい。

django.contrib.admin - 管理用サイト
django.contrib.auth - 認証
django.contrib.contenttypes - ??
django.contrib.sessions - セッション管理
django.contrib.messages - ??
django.contrib.staticfile - 静的ファイル用アプリ

テーブルは以下のものが作られた

auth_group
auth_group_permissions
auth_permission
auth_user
auth_user_groups
auth_user_user_permissions
django_admin_log
django_content_type
django_session

あと上のコマンド実行時に、管理者ユーザー作るかどうか聞かれる。とりあえず作った。

DB設定済ませたので、おもむろにアプリ作成。Railsの時と同様に傍聴情報の出力をやってみるか。

$ python manage.py startapp bocho

を実行するとbochoフォルダが出来てその中に

bocho/
  __init__.py
  admin.py
  models.py
  tests.py
  views.py

が出来た。とりあえずここまで。