1

Django 1.6.5 にアプリケーションがあります。1 つのフィールドを削除し、別のフィールドを追加して、3 つ目のフィールドをアップグレードしたモデルがあります。そして、管理パネルでモデルに目を向けると、次のメッセージが表示されます。

ProgrammingError at /admin/app/subscription/
column app_subscription.enabled does not exist

コマンドpython manage.py syncdbが機能しません。

4

2 に答える 2

0

たまたま、django 1.9.x で同じ問題に直面しました。django アプリに新しいフィールドを追加したところ、上記と同じエラーが発生しました。dbshellを使用して環境にログインしました

python manage.p dbshell # I know some use ./manage.py

テーブルを削除するために次のコマンドを実行して、すべてのテーブルdbshellを削除しました

your_psql=# drop schema public cascade;

これにより、すべてのテーブルがドロップされます (データを失う可能性があるため、データを保持するためにそこに注意してください!)。このコマンドを実行した直後に、すべてがドロップされたことを示すメッセージが表示されます。その直後に、次のコマンドを実行してスキーマを再度作成します。そうしないと、サーバーが実行されません。

your_psql=# create schema public;

次に、次のことを行うだけです

python manage.py makemigrations # you might not need this, and 
python manage.py migrate

そして、あなたは行く準備ができています。

この回答は非常に遅いかもしれませんが、誰かの役に立てば幸いです。

乾杯

于 2016-05-10T06:49:37.097 に答える