首页 文章

当涉及迁移时,如何使用django执行syncdb

提问于
浏览
3

当我执行syncdb时,我每次都会收到以下错误:

Not synced (use migrations):
 - deals
 - analytics
(use ./manage.py migrate to migrate these)

当我运行sudo python manage.py migrate时 . 我得到以下内容

Running migrations for deals:
- Nothing to migrate.
 - Loading initial data for deals.
No fixtures found.
Running migrations for analytics:
- Nothing to migrate.
 - Loading initial data for analytics.
No fixtures found.

我非常感谢你的帮助

3 回答

  • 5

    从输出,似乎数据库是 already synchronized with the migrations . 没有问题的错误 . (虽然你不应该真的是root用户来运行迁移 . )

    如果您正在考虑创建更多迁移,请使用south documentation,修改模型后通常只运行以下命令:

    python manage.py schemamigration --auto <APP>
    

    然后使用 python manage.py migrate 应用更改 .

  • 1

    看起来迁移已经过去了 . 检查db中的south_migationhistory表 .

    如果要为具有迁移的应用程序同步新数据库,请在settings.py中禁用south .

  • 1

    你有没有运行schemamigration初始化?

    ./manage.py schemamigration deals --initial
    ./manage.py migrate deals
    

    如果你得到错误,db已经排除了这样做:

    ./manage.py schemamigration deals --initial
    ./manage.py migrate deals --fake
    

相关问题