Проблемы с установкой Django Debug Toolbar
У меня возникают проблемы при попытке запустить и запустить https://github.com/dcramer/django-debug-toolbar/. У меня есть вся необходимая информация, добавленная в INSTALLED_APPS
, MIDDLEWARE_CLASSES
и мой ip находится в INTERNAL_IPS
кортеж. Я запустил скрипт setup.py, и все, кажется, загружается нормально, так как я не получаю ошибок от django или apache.
Однако ничего не происходит - нет панели инструментов на каких-либо страницах, кто-нибудь еще видел такое поведение? Я что-то упускаю из виду?
2 ответа
У меня была такая же проблема некоторое время.
Вы пробовали войти в админку? Если панель инструментов отображается там, но не отображается в вашем коде, вполне вероятно, что вы пропустили открывающий и закрывающий теги в своем шаблоне. По умолчанию панель инструментов отладки django присоединяется к тегу BODY, хотя вы можете изменить это поведение, если хотите. Смотрите этот вопрос: Панель инструментов отладки Django, работающая только для раздела администратора
Я бы сделал одну из двух вещей:
вставить import pdb; pdb.set_trace()
в промежуточном программном обеспечении _show_toolbar
метод и посмотрите, на каком элементе он не работает, или добавьте промежуточное программное обеспечение с инструкциями print, чтобы увидеть, на какой проверке произошел сбой, в зависимости от того, с чем вам удобнее.
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