1. ホーム
  2. django

[解決済み] django 1.7 migrate で "table already exists" というエラーが発生する。

2022-02-18 10:45:22

質問

マイグレーションを適用しようとしているのですが、エラーが発生します。

django.db.utils.OperationalError: (1050, "テーブル 'customers_customer') "テーブルがない。 はすでに存在しています(quot;)

以下のようなコマンドを発行すると、このような状態になります。

python manage.py migrate

顧客テーブルはすでに存在しています。マイグレーションにこのことを知らせ、エラーにならず、モデルに変更を加えるにはどうしたらよいでしょうか?

ローカル環境、ローカルデータベースで問題なく実行できました。 それは、私のデータベースを本番環境に向け、次のように実行したときです。 migrate 上記で、このエラーが発生しました。

どうすればいいですか?

データベース内にテーブルが作成されている場合、そのテーブルに対して

python manage.py migrate --fake <appname>

マイグレーションを実際に実行することなく、実行済みとしてマークする

また、マイグレーションの一部の動作を避けたい場合は、app/migrations ディレクトリ下のマイグレーション ファイルを編集して、マイグレーションの実行で行いたくない動作をコメントすることができます。

Docs https://docs.djangoproject.com/en/1.8/topics/migrations/#upgrading-from-south または python manage.py help migrate