django - django heroku 部署 postgres 配置
问题描述
这是我第一次将 Django 应用程序部署到 Heroku 我遵循了Django Heroku 文档
该应用程序已成功部署,但是当我打开该应用程序时出现此错误:
relation "products_category" does not exist
LINE 1: ...ory"."image", "products_category"."catogory" FROM "products_...
这是我在阅读文档后对 settings.py 所做的更改:
import django_heroku
django_heroku.settings(locals())
数据库配置仍在使用 sqlite3 运行:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.sqlite3',
'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
}
}
那么我需要更改我的设置以正确部署我的应用程序吗?
解决方案
首先,在您的仪表板中,Heroku 应用程序转到设置并摆脱这个 DISABLE_COLLECTSTATIC conf。
在你的 settings.py 添加
STATIC_ROOT = BASE_DIR / 'staticfiles'
创建一个名为 staticfiles 的目录,并向其中添加 smth(例如 tmp.txt),以确保 git add 。将包括此目录。将所有内容推送到 Heroku,然后使用以下命令:
heroku run python manage.py makemigrations
heroku run python manage.py migrate
推荐阅读
- python-3.x - 来自亚马逊 SP API 的货件 ID?
- asp.net-mvc - Kendo-ui Scheduler 禁用事件编辑
- r - ifesle R 编程中不必要的空白
- c# - 在 c# 中使用 Join 返回一个数组
- python - 我已成功创建 obj、mtl 和纹理图像文件,但无法使用它们生成 3D 图像
- outlook - Outlook 加载项中的 Outlook 日历事件背景同步
- json - 如何在 Angular 中从 HTTP json 获取数据
- node.js - nodejs:日期的 $lte 在 mongo db 中没有按预期工作
- php - 如何将句柄方法调用到 routes.php 文件中?
- java - 简单的 Appium 脚本使用 UiAutomator1 运行,但使用 UiAutomator2 失败