Menu
CoddyTech

初めてのモデル

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を実行すると、変更がデータベースに適用されます。「実行」ボタンを押すと、両方が実行されます。

challenge icon

チャレンジ

簡単

books/models.py に、次の2つの短いテキストフィールドを持つモデル Book を記述します。

  • title、最大200文字
  • author、最大100文字

「実行」を押します。コンソールには、makemigrations が books/migrations/0001_initial.py を作成し、migrate がそれを適用する様子が表示されます。「データ」タブには、新しく作成された空の books.Book テーブルが表示されます。

自分で試してみよう

from django.db import models

# ここにモデルを作成してください。

モデルと管理サイトのすべてのレッスン

自分で練習してみよう: Djangoプレイグラウンド