5

我在尝试启动并运行django-debug-toolbar时遇到问题。我已将所有必要的信息添加到INSTALLED_APPS, MIDDLEWARE_CLASSES,并且我的 ip 在INTERNAL_IPS元组中。我已经运行了 setup.py 脚本,一切似乎都很好,因为我没有从 django 或 apache 收到错误。

但是,什么都没有发生——任何页面上都没有工具栏,还有其他人见过这种行为吗?我错过了一些明显的东西吗?

4

2 回答 2

8

我有一段时间有同样的问题。

您是否尝试过登录管理面板?如果工具栏显示在那里,但没有显示在您的代码中,则很可能是您缺少模板中的开始和结束标记。默认情况下,django 调试工具栏附加到 BODY 标记,但您可以根据需要更改此行为。看到这个问题:Django Debug Toolbar Only Working for Admin Section

于 2011-09-04T15:31:59.953 回答
2

我要么做两件事之一:

import pdb; pdb.set_trace()在中间件方法中插入_show_toolbar并查看它在哪个项目上失败,或者在中间件中添加打印语句以查看它在哪个检查上失败,无论您更喜欢哪个。

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
于 2011-02-17T21:50:13.523 回答