[英]No traceback for manage.py runserver
奇怪的问题。 我有一个以两种方式运行的Django网站:
python manage.py runserver
通过wsgi,一切正常,但是使用runserver
,当我进入任何错误页面( debug = True
)时,页面加载一半,然后永远永久加载,而没有显示回溯。
有关加载“ halfway”的一些注意事项:
request
。 在Firefox中,它始终加载高达SSH_CONNECTION
,而在Chrome中,它加载高达SHELL
(在Firefox中很好地加载)。 正常(非错误)页面加载正常。 控制台不显示任何特殊内容,仅显示代码为500的请求。
听起来您的代码中某处有一个pdb.set_trace()
。 我猜是在__unicode__
方法或在呈现错误页面期间正在调用的东西。 这基于开发服务器的输出被缓冲的概念。
另一个(很有可能)的可能性是,您在某个地方进行了无穷无尽的递归调用(可能与上述set_trace
情况在类似的位置),但是递归功能花费的时间足够长,以至于您永远都看不到RuntimeError: maximum recursion depth exceeded
错误。
例如:
import time
def foo():
time.sleep(.2)
bar()
def bar():
foo()
bar()
否则,要使Python程序挂起是非常困难的,除非您故意这样做。
参见https://code.djangoproject.com/ticket/15132
解决方法是安装“ django-extensions”和werkezeug,然后使用manage.py runserver_plus
启动服务器。 默认情况下,此增强的开发服务器显示回溯以及其他功能。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.