在heroku postgres数据库中添加一列

时间:2014-07-11 12:11:27

标签: python django postgresql heroku

所以,在当地,我已经改变了我的模型几次,并使用南方来使一切正常。我有一个postgres数据库来为我的实时网站供电,一个模型不断触发列mainsite_message.spam does not exist错误。但是当我从终端运行heroku run python manage.py migrate mainsite时,我得到Nothing to migrate。我的所有迁移都被推了。

3 个答案:

答案 0 :(得分:1)

获取适用于您的应用的迁移列表(它将标记待处理的内容以及其他迁移的内容)。

heroku run python manage.py migrate <your app name> --list

如果您已使用--fake迁移,则确定正在等待迁移的数量(例如0003),然后执行迁移恢复以获取之前的状态:

heroku run python manage.py migrate <your_app_name> 0002 --fake

现在再次尝试迁移。

heroku run python manage.py migrate <your app name>

答案 1 :(得分:0)

您之前是否运行过schemamigration?如果是,请转到您的数据库并查看您的表格&#34; south_migrationhistory&#34;在那里你可以看到发生了什么。

如果您已经执行了上述步骤,则应尝试打开迁移文件并查看,您可以在那里找到是否指定了创建列!

答案 2 :(得分:0)

我假设您已创建迁移以将mainsite_message.spam添加到架构中。您是否确保此迁移位于您的git存储库中?

如果您输入git status,您应该看到未跟踪的文件。如果迁移未被跟踪,则需要git add path_to_migration,然后将其推送到Heroku,然后才能在那里运行。