django中所有URL的编程错误,postgres在db中找不到表?

Posted

技术标签:

【中文标题】django中所有URL的编程错误,postgres在db中找不到表?【英文标题】:Programming error at all URLS in django, postgres cannot find tables in db? 【发布时间】:2019-12-08 12:22:54 【问题描述】:

我的 Django 项目在我的机器上本地运行良好,但是当我将它部署到 Heroku 时。我的所有网址都出现错误。我的网址包括:

管理员/ 博客/ 项目/

当我输入不同的网址时,我收到以下错误:


ProgrammingError at /blog/
relation "blog_post" does not exist
LINE 1: ...t"."last_modified", "blog_post"."created_on" FROM "blog_post.

这发生在每个 url。查看回溯,似乎与模板有关。这是回溯:

Template error:
In template /app/personal_portfolio/templates/base.html, error at line 3
   relation "blog_post" does not exist
LINE 1: ...t"."last_modified", "blog_post"."created_on" FROM "blog_post...

File "/app/.heroku/python/lib/python3.6/site-packages/django/db/backends/utils.py" in _execute
  84.                 return self.cursor.execute(sql, params)

The above exception (relation "blog_post" does not exist
LINE 1: ...t"."last_modified", "blog_post"."created_on" FROM "blog_post...
                                                             ^
) was the direct cause of the following exception:

File "/app/.heroku/python/lib/python3.6/site-packages/django/core/handlers/exception.py" in inner
  34.             response = get_response(request)

File "/app/.heroku/python/lib/python3.6/site-packages/django/core/handlers/base.py" in _get_response
  115.                 response = self.process_exception_by_middleware(e, request)

File "/app/.heroku/python/lib/python3.6/site-packages/django/core/handlers/base.py" in _get_response
  113.                 response = wrapped_callback(request, *callback_args, **callback_kwargs)

File "/app/blog/views.py" in blog_index
  12.     return render(request, "blog_index.html", context)

我也认为它与表/数据库有关。我目前在本地机器上使用 SQLite,但我知道 heroku 正在使用 postgres。

我已经删除了每个应用程序中的迁移文件夹并删除了 db.然后我运行了 makemigrations 并多次迁移。

【问题讨论】:

你在哪里跑migrate 您是否真的将您的项目配置为在 Heroku 上使用 postgres?怎么样? 是的,如果您在终端中输入 heroku 插件,您可以看到您已连接到您的应用程序的数据库,并且我已经发布了 gres。 @IainShelvington 我在本地运行迁移,然后将其推送到 heroku ***.com/questions/36410107/… 【参考方案1】:

要么忘记迁移,要么没有连接到数据库。

【讨论】:

我在本地机器上运行了迁移,然后将其推送到 heroku。如何检查我是否连接到 heroku 上的 dB? Heroku 插件? ***.com/questions/36410107/…

以上是关于django中所有URL的编程错误,postgres在db中找不到表?的主要内容,如果未能解决你的问题,请参考以下文章

Django Postgres 完整性错误

postgres 的 Django 1.8 迁移错误

django 和 postgres 的间歇性数据库错误:django 有时会尝试查询我几周前删除的数据库

Django 数据库迁移错误(sqlite3->postgre)

GitLab CI Django和Postgres

在一个命令中删除所有表而不删除 django dbshel​​l 中的 postgres 中的数据库?