Подтвердить что ты не робот

Как увидеть панель инструментов отладки Django?

У меня есть Django webapp. Я установил промежуточное программное обеспечение и модуль debug_toolbar. Тем не менее, мои веб-приложения не имеют отладки панели инструментов.

Как я могу увидеть панель инструментов отладки? Есть что-то еще, что мне нужно сделать? Нужно ли использовать конкретный шаблон для моего webapp? Я выполнил все шаги в README, но этого недостаточно - кажется, есть какая-то другая зависимость, или что-то еще, что мне не хватает.

Кроме того, при просмотре набора шаблонов URL для моего webapp префикс отладки не найден среди распознанных шаблонов. Я поместил журнал urls.py в debug_toolbar, чтобы убедиться, что модули загружаются активированным приложением debug_toolbar, и оно есть.

Это меня полностью озадачило, и я не могу найти ни Google, ни README о том, что делать, чтобы это действительно отображалось или какие требования были предъявлены, поэтому любой указатель, который вы можете предоставить, будет отличным!

Edit: Оказывается, я тестировал это с помощью SSH-туннеля с компьютера, на котором запущен браузер, на машину с запуском Django/Apache. В этом случае IP-адрес, фактически увиденный для удаленной машины, не был тем, что я думал, что это так, поэтому список "хороших" IP-адресов не содержит видимую удаленную машину браузера. Исправление, исправляющее проблему!

4b9b3361

Ответ 1

  • Как я знаю, ваша HTML-страница должна содержать закрытый тег тела, метатег с content="text/html".

  • Я предпочитаю, чтобы все параметры панели отладки были разделены на главные настройки. Поэтому попробуйте положить в конец settings.py что-то вроде

    #debug_toolbar settings
    if DEBUG:
        INTERNAL_IPS = ('127.0.0.1',)
        MIDDLEWARE_CLASSES += (
            'debug_toolbar.middleware.DebugToolbarMiddleware',
        )
    
        INSTALLED_APPS += (
            'debug_toolbar',
        )
    
        DEBUG_TOOLBAR_PANELS = [
            'debug_toolbar.panels.versions.VersionsPanel',
            'debug_toolbar.panels.timer.TimerPanel',
            'debug_toolbar.panels.settings.SettingsPanel',
            'debug_toolbar.panels.headers.HeadersPanel',
            'debug_toolbar.panels.request.RequestPanel',
            'debug_toolbar.panels.sql.SQLPanel',
            'debug_toolbar.panels.staticfiles.StaticFilesPanel',
            'debug_toolbar.panels.templates.TemplatesPanel',
            'debug_toolbar.panels.cache.CachePanel',
            'debug_toolbar.panels.signals.SignalsPanel',
            'debug_toolbar.panels.logging.LoggingPanel',
            'debug_toolbar.panels.redirects.RedirectsPanel',
        ]
    
        DEBUG_TOOLBAR_CONFIG = {
            'INTERCEPT_REDIRECTS': False,
        }
    

(Редактировать примечание: lapis обновил приведенные выше конфигурации, чтобы они соответствовали именам, используемым текущей (на момент обновления, 1.3.2) версией панели инструментов Django Debug. В http://django-debug-toolbar.readthedocs.org/en/0.10.0/panels.html, исходные версии (которые использовались, например, debug_toolbar.panels.sql.SQLDebugPanel vs debug_toolbar.panels.sql.SQLPanel, как в 1.3.2), были правильными, когда этот вопрос был оригинальным. )

(примечание: после Django 1.10, MIDDLEWARE_CLASSES должно быть MIDDLEWARE.)