我在尝试启动django-debug-toolbar时遇到问题。我已将所有必要的信息添加到INSTALLED_APPS
,MIDDLEWARE_CLASSES
,我的IP位于INTERNAL_IPS
元组中。我已经运行了setup.py脚本,所有内容似乎都正常加载,因为我没有从django或apache中获取任何错误。
但是,没有任何反应 - 任何页面上都没有工具栏,有没有人见过这种行为?我错过了一些明显的东西吗?
答案 0 :(得分:8)
我有一段时间也有同样的问题。
您是否尝试登录管理面板?如果工具栏显示在那里,但未显示在您的代码中,则很可能是您缺少模板中的开始和结束标记。默认情况下,django调试工具栏会附加到BODY标记,但如果您愿意,可以更改此行为。请参阅此问题:Django Debug Toolbar Only Working for Admin Section
答案 1 :(得分:2)
我要么做两件事之一:
在中间件import pdb; pdb.set_trace()
方法中插入_show_toolbar
并查看它失败的项目,或者使用print语句对中间件进行加密,以查看哪个检查失败,无论您更熟悉哪个。< / p>
def _show_toolbar(self, request, response=None):
if not settings.DEBUG or not getattr(settings, 'DEBUG_TOOLBAR', True) or getattr(settings, 'TEST', False):
return False
if request.path.startswith(settings.MEDIA_URL):
return False
if response:
if getattr(response, 'skip_debug_response', False):
return False
if response.status_code >= 300 and response.status_code < 400:
return False
# Allow access if remote ip is in INTERNAL_IPS or
# the user doing the request is logged in as super user.
if (not request.META.get('REMOTE_ADDR') in settings.INTERNAL_IPS and
(not request.user.is_authenticated() or not request.user.is_superuser)):
return False
return True