4

我一直在开发一个 django 应用程序并且已经成功地使用了 South。出于某种原因,我不再能够通过以下方式访问南命令manage.py

$ python manage.py schemamigration appname
Unknown command: 'schemamigration'
Type 'manage.py help' for usage.

此外,manage.py help没有列出任何 South 命令。

我仍然可以很好地导入 Southmanage.py shell并且 south 仍然在我的INSTALLED_APPS. 我在 virtualenv 中运行 South 0.7.6、Django 1.4.1 和 Python 2.7.3,并且我也尝试过重新创建 virtualenv,但没有运气。有任何想法吗?

已解决:经过一番摆弄后,我注意到当我从settings.py > INSTALLED_APPSSouth 中删除我的应用程序时,功能返回了。所以,我又调查了一些......

我已经LOGIN_REDIRECT_URL设置了settings.py使用reverse()查找的方法。reverse()查找失败是因为admin.py试图导入我刚刚删除的模型。这就是我的南方问题的根源。为了解决我的问题,我删除了有问题的 import in admin.py,但我也测试了将全局变量包装在settings.pywithtry/except中,这也有效。

我觉得奇怪的是,manage.py当它在导入时窒息时会默默地失败settings.py。有没有办法改变这种行为?此外,是否有设置全局变量的最佳实践settings.py

4

0 回答 0