我有一个现有的项目,它广泛地使用South迁移将数据加载到其表中。
自从升级到Django 1.3以来,我们的单元测试无法运行,因为它们找不到所依赖的数据。
- 这种行为是否是由于1.3中的一项不兼容的更改引起的?
- 是否有一种简单的方法可以将所有这些迁移转换为夹具?
我有一个现有的项目,它广泛地使用South迁移将数据加载到其表中。
自从升级到Django 1.3以来,我们的单元测试无法运行,因为它们找不到所依赖的数据。
是的,这种行为是由于此更改引起的。
在South trunk中似乎有一个解决方法(参见https://bitbucket.org/andrewgodwin/south/changeset/21a635231327),所以您可以尝试使用South开发版本(根据我的经验,它非常稳定)。
您可以尝试在设置中更改数据库名称(以获得干净的环境),运行./manage.py syncdb
和./manage.py migrate
,然后执行./manage.py dumpdata
。
pip install hg+https://bitbucket.org/andrewgodwin/south
但是,据我所知,这并不能解决问题... - hwjp
./manage.py schemamigration app --initial
命令。但是请先备份所有内容,因为这可能有用也可能没用。 - Zhehao Mao