【问题标题】:When migrating Django to deployment i get this error why?将 Django 迁移到部署时出现此错误,为什么?
【发布时间】:2020-10-09 15:18:35
【问题描述】:

在我的本地机器上没有问题。一切运行完美。甚至 python manage.py check --deploy 在我的本地也没有出现任何问题。 无论使用管理命令,我得到的错误似乎都阻止了我对项目做任何事情。 但是当我在我的外部服务器上运行 makemigrations 进行部署时,它给了我这个错误:

Traceback (most recent call last):


 File "/opt/pyapps/venv/lib/python3.8/site-packages/django/db/backends/utils.py", line 86, in _execute
    return self.cursor.execute(sql, params)
psycopg2.errors.UndefinedTable: relation "Report_report" does not exist
LINE 1: SELECT "Report_report"."id" FROM "Report_report" ORDER BY "R..

https://pastebin.com/L0waK5Nq

【问题讨论】:

  • migrate你对外部服务器上的数据库所做的所有更改吗?
  • 它不允许我尝试。我实际上只是将文件放在服务器上。它的初始设置。

标签: django database postgresql django-models


【解决方案1】:

您可以尝试为单个应用运行迁移。 python manage.py 迁移应用程序

尝试为将生成报告表的应用运行它,然后运行其他迁移。

【讨论】:

  • 我仍然遇到同样的问题。无论我尝试迁移哪个应用程序/进行迁移。
  • 能否注释掉麻烦的​​代码(模型)进行迁移并运行假迁移:python manage.py migrate --fake。然后取消注释代码运行 makemigrations 并运行实际迁移(没有--fake)
【解决方案2】:

我设法修复它。因为它的值通过给它一个临时值在其他地方被调用,所以它允许我完成迁移,然后在创建表后使用之前的代码。

【讨论】:

    猜你喜欢
    • 2018-05-02
    • 2015-03-31
    • 1970-01-01
    • 2016-04-10
    • 2020-10-25
    • 2020-08-02
    • 1970-01-01
    • 2017-01-23
    • 2013-11-24
    相关资源
    最近更新 更多