更改Django在测试期间迁移应用的顺序

时间:2015-04-22 13:18:43

标签: python django testing migration

我正在使用继承自AbstractBaseUser类的自定义用户模型。当我尝试在makemigrations命令之后迁移

  

django.db.utils.ProgrammingError:关系“custom_user_users”不存在

这是因为Django首先尝试迁移其他应用程序,这取决于自定义用户模型。即使我试图在INSTALLED_APP中更改包含自定义用户模型的应用程序的顺序,但没有运气。

我知道我可以先强制完全迁移custom_user模型,然后让Django迁移所有其他模型。这解决了问题,但在运行测试期间,它按照Django决定的顺序运行迁移。

如何更改测试期间迁移应用的顺序?还有其他任何方法可以解决这种依赖性问题吗?

我正在使用Django 1.8

2 个答案:

答案 0 :(得分:1)

将您的应用放在settings.py文件中的INSTALLED_APP中的Django应用之前

答案 1 :(得分:1)

https://pypi.python.org/pypi/django-test-without-migrations在manage.py test中添加了一个--nomigrations标志。像魅力一样。