我在我现有的Django应用程序上安装了South。这个Django应用程序也在Heroku上。
不对模型进行任何更改,我在本地完成了以下命令:
manage.py schemamigration app_name --initial
manage.py migrate --fake
然后我试图推动heroku master,然后迁移到那里。但我收到以下内容:
Running migrations for app_name:
- Nothing to migrate.
- Loading initial data for notecards.
No fixtures found
如果我试图伪造Heroku迁移,我会收到相同的消息。
我想,这可能没问题,因为从技术上来说,没有什么可以迁移,因为数据库保持不变。
所以我对其中一个模型进行了一些小改动,并做了以下工作:
manage.py schemamigration app_name --auto
manage.py migrate
然后我推到Heroku并尝试迁移到那里,我仍然收到以下内容:
Running migrations for app_name:
- Nothing to migrate.
- Loading initial data for notecards.
No fixtures found
对我做错的任何帮助都会很棒。感谢。
答案 0 :(得分:-1)
对于遇到此问题的任何其他人,以及我自己的参考。感谢Chris Pratt让我走上正轨。
这解决了:
本地:
以递归方式删除任何旧迁移git rm -r migrations
刷新旧数据库(这会删除所有数据,但对我来说这不是问题)manage.py flush
删除app文件夹中的迁移文件夹
运行初始架构移民manage.py schemamigration --initial
运行虚假迁移manage.py migrate --fake
推送heroku master
On Heroku:
迁移heroku run python manage.py migrate app_name
然后,在本地,您可以运行migrate --auto,push to heroku,并运行migrate app_name