Migrations履歴を削除する
Migrations履歴が残っていると自動でサロゲートキーである「id」が追加されません。なので以下のコマンドを使用して履歴を削除します。
(datareaderアプリのMigrations履歴を削除するためのコマンドです。ご自身の環境に合わせて変更して下さい。)
python manage.py migrate --fake datareader zero
Migrations履歴は以下のコマンドで確認ができます。
python manage.py showmigrations
後は削除対象のアプリの配下にあるmigrationsの__init__.py以外を全て削除します。その後にshowmigrationsコマンドを実行し、「(no migrations)」が表示されていれば履歴の削除が完了です。
その後はいつも通りmakemigrationsからのmigrateコマンドを実行すればテーブルが作成されます。
models.pyに記載のない「id」が作成されていることが確認できると思います。
この記事が気に入ったらサポートをしてみませんか?