ジャンゴと奏でる 〜数時間でおぼえるDjango〜「もくじ」
早速、簡単なブログのようなものを作ってみます。
一覧・追加・更新・削除
『一覧・追加・更新・削除』機能を利用することをテーマに、entriesアプリを作ります。
「entries」アプリケーション作成
ブログの基本的な機能を「entries」アプリで作っていきます。
まず、コマンド「startapp」で「entries」アプリ作成。
/hoge/jam $ python manage.py startapp entries /hoge/jam $ ls __init__.py entries settings.py urls.py __init__.pyc manage.py settings.pyc /hoge/jam $ cd entries /hoge/jam/entries $ ls __init__.py models.py views.py
「entries」ディレクトリと3つのファイルが作られました。
Model作成
model.pyでデータベースの定義をします。
/hoge/jam/entries/models.pyを以下のように書き換えてください。
from django.db import models class Entry(models.Model): title = models.CharField(max_length = 100) content = models.TextField(max_length = 1000) def __unicode__(self): return self.title def get_absolute_url(self): return "/entries/detail/%i" % self.id
(「def __unicode__〜」と「def get_absolute_url〜」の説明はそのうち(´・ω・`))
syncdbでデータベース作成とadmin登録
model.pyで定義したデータベーステーブルを作成します。
初めてsyncdbするとスーパユーザアカウントを作成するか尋ねてくるので、yesと入力して作成しておきましょう。パスワードは後で使うので、忘れないようにメモなどしておいてください。(おぼえられなければ「1234」で)
「/hoge/jam/」ディレクトリに移動して、コマンド「python manager.py syncdb」をタイプしてください。
/hoge/jam $ python manage.py syncdb Creating table auth_permission Creating table auth_group Creating table auth_user Creating table auth_message Creating table django_content_type Creating table django_session Creating table django_site Creating table entries_entry You just installed Django's auth system, which means you don't have any superusers defined. Would you like to create one now? (yes/no): yes Username (Leave blank to use 'username'): admin E-mail address: admin@admin.com Password: Password (again): Superuser created successfully. Installing index for auth.Permission model Installing index for auth.Message model
開発用Webサーバ
確認用の開発用Webサーバを立ち上げてみましょう。
/hoge/jam/ディレクトリで
python manage.py runserver
とコマンドをいれてWebブラウザでhttp://127.0.0.1:8000/にアクセスしてみてください。
正常に動けば最初にアクセスした時のみ次の画面になります。
これから製作中に表示がおかしいと思った時は、Webサーバを再起動すると正常になる場合もあるので覚えておいてくださいね。