我们总是从settings_test运行我们的测试,如下所示:./manage.py test someapp --settings = settings_test。问题是,记住添加选项有时是有问题的。(Django)创建一个管理命令,将覆盖BaseCommand中的默认设置
我想介绍一个只有管理命令test.py的通用应用程序。根据它在INSTALLED_APPS设置中的位置,它将覆盖默认值。在命令本身中,我想更改--settings选项的默认值。我怎样才能做到这一点?
我知道我可以创建一个类似于manage.py但使用settings_test而不是设置的local.py文件。然而,重点仍然是运行./manage.py,但是将settings_test作为默认值,而不是在./manage.py之后不断键入“--settings = settings_test”。测试someapp
您是否考虑过为'manage管理写一个别名?py在shell中测试someapp --settings = settings_test'? – 2013-03-11 20:47:10
这只是出于实际的目的:创建别名意味着每个正在从事项目工作的程序员都必须在其侧面创建别名,并且我想避免这种情况。我想将settings_test设置为默认设置,所以其他通常忘记添加该选项的程序员最终不会关注错误类型的错误,如果他们添加了错误,则不会出现错误类型。 – 2013-03-11 22:02:59
为什么不用这样的常用命令创建一个Makefile并将其与您的存储库一起检查?然后你可以'make test_someapp'并完成它。 – mVChr 2013-03-11 22:05:31