首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >部署时的django CMS错误cms_urlconfrevision

部署时的django CMS错误cms_urlconfrevision
EN

Stack Overflow用户
提问于 2019-05-23 21:28:07
回答 3查看 615关注 0票数 1

我正在尝试将django CMS应用程序部署到PythonAnywhere或Heroku,但是我一直在Heroku上得到这个错误:

代码语言:javascript
复制
ProgrammingError at /
relation "cms_urlconfrevision" does not exist
LINE 1: ...sion"."id", "cms_urlconfrevision"."revision" FROM "cms_urlco...

而PythonAnywhere上的错误是:

代码语言:javascript
复制
OperationalError at /
no such table: cms_urlconfrevision

该应用程序在localhost上运行良好。

我知道它缺少一个数据库表,但我不知道如何修复它。我尝试删除所有迁移文件和.pyc文件,然后再次迁移,删除数据库,尝试使用--fake进行迁移。似乎什么都起不到作用。

我在用

  • django-cms=3.6.0
  • Django==2.1.8
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2019-05-24 12:52:16

我知道它缺少一个数据库表,但我不知道如何修复它。我尝试删除所有迁移文件和.pyc文件,然后再次迁移,删除数据库,尝试使用--fake进行迁移。似乎什么都起不到作用。

迁移文件只定义迁移存在的内容。他们不会自己修改你的数据库。这里有两个步骤:

  1. 使用makemigrations创建迁移。这应该只在您的开发机器上完成。在部署代码时,您不应该有任何可能导致新迁移的模型更改。
  2. 使用migrate将迁移应用于数据库。这必须在开发(更新本地数据库)和生产(更新生产数据库)中完成。 在Heroku上,您可以使用 heroku运行python manage.py迁移 我觉得这是你错过的一步。
票数 4
EN

Stack Overflow用户

发布于 2019-06-21 23:01:49

你好,也许您找到了解决方案,但如果有人遇到了该问题,这是由于数据库设置。

在project_name/site_name/setings.py和数据库设置部分中

变化

代码语言:javascript
复制
NAME: 'project.db' 

代码语言:javascript
复制
NAME:'project_name/project.bd'
票数 1
EN

Stack Overflow用户

发布于 2021-04-28 16:47:49

文件中的setting.py更改

代码语言:javascript
复制
  'NAME': 'project.db',

代码语言:javascript
复制
'NAME': BASE_DIR / 'project.db',

为我工作

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56283143

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档