初めてのモデル
CoddyのDjangoジャーニー「モデルと管理サイト」セクションの一部。レッスン 1/23。
書棚サイトは本を記憶しておく必要がありますが、ビューは応答するとすべてを忘れてしまいます。サイトはデータをデータベースに保存します。データベースはテーブルで構成され、各行が1つのレコードです。Djangoではモデルを使ってデータを記述します。モデルはアプリのmodels.pyにあるクラスで、Djangoがテーブルを作成します。各フィールドは列になります。
from django.db import models
class Movie(models.Model):
title = models.CharField(max_length=150)
director = models.CharField(max_length=80)CharFieldは短いテキストを格納し、文字数は最大でmax_lengthです。Djangoは自動的にid列を追加します。これは各行を区別するための数値です。
クラスだけではテーブルは作成されません。python manage.py makemigrationsを実行するとマイグレーションが書き出されます。これは変更内容を記述する、アプリのmigrations/フォルダー内のファイルです。python manage.py migrateを実行すると、変更がデータベースに適用されます。「実行」ボタンを押すと、両方が実行されます。
チャレンジ
簡単books/models.py に、次の2つの短いテキストフィールドを持つモデル Book を記述します。
title、最大200文字author、最大100文字
「実行」を押します。コンソールには、makemigrations が books/migrations/0001_initial.py を作成し、migrate がそれを適用する様子が表示されます。「データ」タブには、新しく作成された空の books.Book テーブルが表示されます。
自分で試してみよう
from django.db import models
# ここにモデルを作成してください。
モデルと管理サイトのすべてのレッスン
自分で練習してみよう: Djangoプレイグラウンド