簡體   English   中英

盡管正在創建 model,但 Django 編程錯誤關系不存在

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM