在 Heroku 仪表板中销毁数据库后,如何将数据库重新提交给 Heroku

How do I recommit database to Heroku after destroying DB in the Heroku dashboard

我已经使用 Django 等构建了一个应用程序。在 运行 heroku run python manage.py makemigrationsheroku run python manage.py migrate.

我决定完全销毁当前在 Heroku 上的数据库,并想将我的应用程序的模型重新提交给 heroku。我的希望是彻底从头再来。

我只是想确保我正确地执行了此操作,所以我要求获得有关如何在破坏仪表板中的数据库后将我的应用程序的数据库重新提交给 Heroku 的明确说明。

我在线打开我的应用程序时遇到的当前错误是:

settings.DATABASES is improperly configured. Please supply the NAME or OPTIONS['service'] value.

谢谢!

如果您完全删除了数据库,则必须提供另一个数据库。假设您使用的是 Heroku Postgres¹,您可以 do that using the Heroku CLI like so:

heroku addons:create heroku-postgresql:hobby-dev

这里我们要求 Heroku 使用免费的 hobby-dev 层提供 heroku-postgresql add-on。根据需要修改。

你也可以provision add-ons using the Dashboard if you prefer.

作为配置过程的一部分,Heroku Postgres 会自动为您的应用设置一个新的 DATABASE_URL。只要您的项目在删除旧数据库之前使用此变量,它就应该无需任何更改即可找到新数据库。


¹如果您使用的是不同的数据库 add-on,解决方案应该大致相同。提供 add-on 的新实例,让它设置其环境变量,如果您的应用程序在使用该变量之前应该自行选择它。