Python Django Heroku和postgresql
我是在heroku上发布django应用程序的新手。 我读过他们的教程,我想我应该从修改他们的教程开始 到目前为止一切都很好 然后我制作了一个应用程序,制作了一个模型,然后运行Python Django Heroku和postgresql,python,django,postgresql,heroku,Python,Django,Postgresql,Heroku,我是在heroku上发布django应用程序的新手。 我读过他们的教程,我想我应该从修改他们的教程开始 到目前为止一切都很好 然后我制作了一个应用程序,制作了一个模型,然后运行 python3 manage.py makemigrations my_app python3 manage.py migrate 事情似乎还不错 然后我推到heroku,没有立即的抱怨 但是,现在当我尝试保存新模型时,出现了以下错误: ProgrammingError at /my_app/ relation "my
python3 manage.py makemigrations my_app
python3 manage.py migrate
事情似乎还不错
然后我推到heroku,没有立即的抱怨
但是,现在当我尝试保存新模型时,出现了以下错误:
ProgrammingError at /my_app/
relation "my_app_myappmodel" does not exist
LINE 1: INSERT INTO "my_app_myappmodel" ("field1", "field2", "field3") VALUES...
奇怪的
所以我在本地运行,一切正常
我尝试过清理我的迁移,假装我的迁移,挤压我的迁移,等等(正如其他S.O.帖子所建议的)
什么都不管用
出现了什么问题以及如何修复?一旦推送了由
makemigrations
生成的代码,您需要在Heroku上实际运行迁移。您可以通过heroku run manage.py migrate执行此操作从终端运行以下命令
heroku run python manage.py migrate
或者,您也可以执行以下操作:
在本地settings.py
中,将数据库更改为使用heroku变量,然后从终端运行
python manage.py makemigrations
python manage.py migrate
但是您通常不应该在本地对heroku生产数据库进行更改(如选项2),除非您真的非常绝望或不在乎迁移了多少次,您可以在这里添加代码吗?@BearBrown这只是您运行“迁移”的初始值在heroku实例上?@AamirAdnan这与在本地运行migrate和推动git repo有何不同