我正在使用django和postgres数据库。 当加载管理员时,点击课程表,我得到一个典型的错误:
ProgrammingError at /admin/user_profile/course/
relation "user_profile_course" does not exist
LINE 1: SELECT COUNT(*) AS "__count" FROM "user_profile_course"
我尝试了makemigrations,并再次迁移它,但没有成功。在
你能帮我怎么处理吗?在
我的模型.py看起来像:
^{pr2}$编辑:
我删除了迁移文件夹,然后再次进行迁移。 在0001初始.py依赖关系看起来像:
dependencies = [
('auth', '0007_alter_validators_add_error_messages'),
]
看起来您已经从migrations文件夹中删除了已经应用的迁移,并用不同的模型状态重新创建了它(使用额外的模型
Course
)。在当数据库的实际结构和应用迁移后的状态不同时,就会出现这种情况。在
现在,您既可以修复迁移,也可以修复数据库结构。在
要完成第一个可能的修复,您需要检查数据库的当前状态,并将其与迁移文件进行比较。如果迁移文件中有不同的内容,只需更改它以反映您的数据库结构。在
如果不知道如何编辑迁移文件,可以更改模型以反映数据库结构,删除迁移,然后使用
makemigrations
再次创建它。在修复迁移文件后,生成第二个迁移文件,只需运行
makemigrations
,在模型文件中具有所需的模型结构。在对于第二种解决方案,请检查迁移文件中的内容并编辑数据库结构以反映这一点。在
请记住,不要删除或更改已经应用的迁移,除非您真的知道自己在做什么!在
相关问题 更多 >
编程相关推荐