2013-10-22 53 views
1

所以我在一个半月前开始使用我的第一个Django应用程序。我的数据库比较大,而且我需要修改一些模型。我的Django版本为1.5,我查阅并研究了South是该版本迁移的事实标准,但是1.6引入了内置的迁移,但由于它还是相当新的,我应该尝试南或升级到1.6吗?Django,使用南或升级到1.6?

+1

1.6没有内置的迁移,确实1.7。这个问题是误导性的。来源:https://docs.djangoproject.com/en/dev/releases/1.7/ –

回答

1

由于Django的当前正式版本是1.5.4,我推荐使用South。在Django的开发版本中,他们正在将南部构建到框架中,这应该非常类似。我预计,一旦它发布,他们将有一些方法将Django 1.5 + South迁移到Django w/migrations。

您可能会遇到迁移到Django测试版的其他问题,其中一些可能不受支持。此外,根据开发版本文档,似乎迁移为built into 1.7

-1

我也推荐使用South。如果您使用现有数据库http://south.readthedocs.org/en/latest/commands.html#options,则可能必须运行伪造的迁移。

基本上是:

./manage.py schemamigration app_name --initial 

然后

./manage.py migrate --all --fake 0001 
+0

你是指现有的数据库是什么?我用django构建了我的数据库。 – dl8

+0

如果您已经将网站运行起来,那么将您的应用程序挂起来使用South将采取额外步骤来伪造第一次迁移(因为表已经存在)。 – Nathaniel

+0

嗯,我在Heroku上部署了我的站点,但是我拥有同一个数据库的本地副本。所以我不能运行南,修改,更新我的数据库,推我的应用程序到Heroku,然后将我的本地数据库转储到我的部署数据库? – dl8