我有一个Django应用,它使用heroku上托管的postgres数据库。我正在尝试基于此Django应用创建评论应用。但是,我似乎无法在评论应用程序上访问我的数据库。我添加了如下app.json中所示的postdeploy脚本,但似乎无法解决该问题:
{
"name": "bookapp",
"scripts": {
"postdeploy": "pg_dump $DATABASE_URL | psql $DATABASE_URL && python
./manage.py migrate"
},
"env": {
"DATABASE_URL": {
"required": true
},
"QV_CLOUDINARY_API_KEY": {
"required": true
},
"QV_CLOUDINARY_API_SECRET": {
"required": true
},
"QV_CLOUDINARY_CLOUD_NAME": {
"required": true
},
"QV_DATABASE_NAME": {
"required": true
},
"QV_DATABASE_PASSWORD": {
"required": true
},
"QV_DATABASE_USER": {
"required": true
},
"QV_SECRET_KEY": {
"required": true
}
},
"formation": {
"web": {
"quantity": 1
}
},
"addons": [
"heroku-postgresql"
],
"buildpacks": [
{
"url": "heroku/python"
}
]
}
答案 0 :(得分:0)
找到了解决方案!。
上面的app.json文件是正确的。显然,部署后脚本仅在首次创建应用程序时运行。我必须关闭对审阅应用程序的“拉取请求”,然后重新打开一个新请求,以便创建一个新的审阅应用程序。这样做执行了部署后脚本,因此我能够访问我的数据库。