[英]Django programming error relation does not exist despite model being created
我重命名了一些模型並嘗試應用遷移,但 Django 沒有檢測到它們已重命名。 因此,我刪除了 manage.py 的內容,刷新了數據庫,然后運行了 manage.py makemigrations 和 manage.py migrate。 現在,當我嘗試通過管理控制台或任何查詢訪問我的模型之一時,出現以下錯誤:
ProgrammingError at /admin/restapi/appuser/
relation "restapi_appuser" does not exist
LINE 1: SELECT COUNT(*) AS "__count" FROM "restapi_appuser"
當我運行 manage.py makemigrations 時,output 包括(截斷):
Migrations for 'restapi':
restapi/migrations/0001_initial.py
- Create model AppUser
我嘗試使用以下 output(截斷)運行 python3 manage.py sqlmigrate restapi 0001_initial:
BEGIN;
--
-- Create model AppUser
--
CREATE TABLE "restapi_appuser" ("id" serial NOT NULL PRIMARY KEY, "username" varchar(30) NOT NULL UNIQUE, "email" varchar(50) NOT NULL UNIQUE, "password" varchar(50) NOT NULL, "join_date" timestamp with time zone NOT NULL);
在我看來 model 應該在數據庫中,但我想知道為什么我會收到此錯誤
編輯:
為了完整性,manage.py 的 output 在這里遷移:
> python3 manage.py migrate
Operations to perform:
Apply all migrations: admin, auth, contenttypes, restapi, sessions
Running migrations:
No migrations to apply.
sqlmigrate
僅向您顯示用於遷移的 SQL。
在makemigrations
編輯后,您需要運行migrate
for Django 以實際將掛起的遷移應用到您的數據庫中。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.