Django奇怪的行为:manage.py命令没有结束

时间:2013-08-05 07:16:53

标签: python django django-manage.py

在过去的几天里,我在我的一个django项目中观察到一种非常奇怪的行为:

当我运行一些manage.py命令时,我看到虽然命令已执行,但它们不会结束。例如,如果我尝试运行syncdb:

c:\django> python manage.py syncdb
Syncing...
Creating tables ...
Creating table questions_category
Creating table questions_question
Creating table questions_answer
Installing custom SQL ...
Installing indexes ...
Installed 0 object(s) from 0 fixture(s)

此时我应该输入命令 - 但我没有!我有各种其他manage.py命令的相同行为 - 它们运行正常,但它们不退出(例如dumpdata或loadata - 数据被转储/加载好,但是当这些完成时我没有得到命令提示符) !有没有人观察到同样的行为?有没有办法调试?我尝试在settings.py的末尾添加print语句,我可以看到输出没有问题。

此外,我可能与上述相关的另一个问题是runserver_plus命令不再能够找到代码更改。所以,当我运行manage.py runserver_plus并更改我的settings.py时,我看到了:

 * Detected change in 'C:\\progr\\py\\adeies\\adeies\\settings.py', reloading

它停在那里:(它没有重新加载应用程序!使用普通的runserver重新加载应用程序没有问题,但出于显而易见的原因,我更喜欢使用runserver_plus命令。

您对如何调试有任何想法吗?

谢谢!

1 个答案:

答案 0 :(得分:1)

某些依赖项可能会启动一个线程。当代码更改自动重载或执行管理命令时,Django将等待所有线程完成。检查所有依赖项以确定哪个可能导致此问题。