OperationalError: no such table
Djangoでデータベースにテーブルが存在しない場合に発生
概要
OperationalError: no such tableは、Djangoでまだ作成されていないテーブルにアクセスしようとした場合に発生します。
エラーメッセージ
django.db.utils.OperationalError: no such table: app_model
原因
- マイグレーション未実行: テーブルが作成されていない
- マイグレーション未作成: モデル変更後にmakemigrationsしていない
- データベースファイルの問題: SQLiteファイルが見つからない
- 接続先の間違い: 別のデータベースに接続
解決策
1. マイグレーションを作成・実行
| |
2. アプリ固有のマイグレーション
| |
3. マイグレーション状態を確認
| |
4. データベースをリセット(開発時のみ)
| |
5. 設定を確認
| |
6. INSTALLED_APPSにアプリを追加
| |
7. マイグレーションをやり直す
| |
Django の他のエラー
この記事は役に立ちましたか?