ホームページ >データベース >mysql チュートリアル >Django で「テーブルが存在しません」エラーを修正する方法?
Django: 「テーブルが存在しない」エラーの解決
このエラーは、Django が存在しないテーブルに対してデータベース操作を実行しようとすると発生します。通常は手動による削除またはアプリケーションの変更が原因で、以前より存在しています。 models.
問題の説明:
モデル関連のテーブルを削除した後、syncdb コマンドはテーブルを再度作成しようとします。ただし、テーブルのモデルは models.py にまだ存在しているため、Django はテーブルが存在することを期待していますが、テーブルが存在しないことがわかります。これにより、「テーブルが存在しません」エラーが発生します。
解決策の手順:
移行の実行 (Django バージョン >= 1.7 の場合):
OR
スキーマ移行の実行 (Django バージョン
Django バージョンの例 >= 1.7:
# Comment out the model in models.py # class feed(models.Model): # ... # Execute migrations python manage.py makemigrations python manage.py migrate # Comment in the model in models.py # class feed(models.Model): # ... # Re-execute migrations python manage.py migrate
Django バージョンの例 < 1.7:
# Comment out the model in models.py # class feed(models.Model): # ... # Execute schema migration python manage.py schemamigration someapp --auto python manage.py migrate someapp --fake # Comment in the model in models.py # class feed(models.Model): # ... # Re-execute schema migration python manage.py migrate someapp次の手順に従って、欠落しているテーブルを再作成し、「テーブルが存在しません」エラーを解決できます。
以上がDjango で「テーブルが存在しません」エラーを修正する方法?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。