1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【Django】テーブル定義が更新できないときの解決法(SQLite3)

Posted at

はじめに

Djangoでテーブル定義を修正したのにマイグレーションしても更新されない点で詰まったので、解決方法を残しておきます。

内容

$ python manage.py makemigrations
It is impossible to add a non-nullable field '×××××' to ××××× without specifying a default. This is because the database needs something to populate existing rows.
Please select a fix:
 1) Provide a one-off default now (will be set on all existing rows with a null value for this column)
 2) Quit and manually define a default value in models.py.
Select an option:

Models.pyで定義したフィールドに設定する要素が足りていない状態を指摘されている。

解決方法

Models.pyの各フィールドに
blank = False, null = False を追加する。

許容するとき:True
許容しないとき:False
のように、適切なものを設定する必要がある。

修正後、下記コマンドを実行するとテーブル定義が更新された。
$ python manage.py makemigrations
$ python manage.py migrate

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?