我正在使用Django调试工具栏来调试和优化我的网站。我还使用一些自定义中间件来做一些事情,例如检查用户是否已登录并被允许访问他们试图查看的网址,查询广告等。
在此中间件中,有时会执行SQL查询,但查询不会显示在“查询”下面。滴滴涕小组。有没有办法让DDT识别和跟踪中间件?
答案 0 :(得分:3)
MIDDLEWARE_CLASSES的顺序非常重要。你应该包括 在列表中尽早调试工具栏中间件。但是,它 必须在任何其他编码响应的中间件之后 内容,例如GZipMiddleware。
解决方案是将debug_toolbar.middleware.DebugToolbarMiddleware
放在MIDDLEWARE_CLASSES
中的自定义中间件之前。
答案 1 :(得分:0)
我发现错误的地方之一就是我为启用debug_toolbar的所有设置添加了一个单独的文件debugtoolbar.py。我刚刚在settings_local.py中导入了这个,但是它以某种方式调用了两次而且没有显示查询。
我添加条件语句后立即添加
use Carbon\Carbon;
它开始工作得很好。希望这能节省一些人的时间。