看看这个:
$ pypy ./manage.py syncdb
/usr/lib64/pypy-2.4.0/site-packages/django/core/management/commands/syncdb.py:24: RemovedInDjango19Warning: The syncdb command will be removed in Django 1.9
warnings.warn("The syncdb command will be removed in Django 1.9", RemovedInDjango19Warning)
(cut)
我运行了一个quick google search,但是找不到答案-我应该使用什么来代替syncdb
?
由于the migration system与django 1.7一起引入,不推荐使用
syncdb
。现在您可以使用
makemigrations
跟踪更改。这会将模型更改转换为python代码,使它们可以部署到其他数据库。当需要对数据库进行进一步修改时,可以使用data migrations。创建迁移后,必须应用它们:
migrate
。因此,与其使用
syncdb
,不如使用makemigrations
,然后使用migrate
。更改模型中的某些内容后的开发工作流:
在你的生产系统上:
奖励:您不需要为每次更改运行
migrate
。如果有多个更改尚未应用,django将以正确的顺序为您运行它们。你一定要用migration system。它允许您跟踪} 创建迁移,使用命令^{} 迁移数据库。
models.py
中的更改,并为数据库创建迁移。迁移系统使用命令^{如果出于任何原因,您需要以相同的方式创建数据库
syncdb
,那么有一个命令标志会导致migrate
以相同的方式工作。只有当您真正需要并且知道自己在做什么时,才应该这样做。例如,为您选择的连续集成系统创建空数据库。在Django 1.9.1测试。
您应该使用django 1.7中引入的
makemigrations
和migrate
命令https://docs.djangoproject.com/en/1.7/topics/migrations/
相关问题 更多 >
编程相关推荐