Cannot get django-debug-toolbar to appear

Richard picture Richard · Mar 11, 2015 · Viewed 8.4k times · Source

No matter what I do, I simply cannot get django-debug-toolbar to appear. I've tried everything suggested in every answer on this question.

  • I have DEBUG=True in my settings
  • I have django.contrib.staticfiles and debug_toolbar in INSTALLED_APPS
  • I have 'debug_toolbar.middleware.DebugToolbarMiddleware' high up in MIDDLEWARE_CLASSES
  • I have INTERNAL_IPS = () in my settings
  • I tried adding print("IP Address for debug-toolbar: " + request.META['REMOTE_ADDR']) in a view, and it printed IP Address for debug-toolbar: 127.0.0.1
  • I have a closing </body></html> in my template
  • I have run pip install django-debug-toolbar in my virtualenv, without any issues
  • I have run python manage.py collectstatic and there is a debug_toolbar directory in my static files

When I run the app, I see no request in the console for any URLs containing django_debug_toolbar, so I suspect it's the application not being loaded.

I don't see any failed requests in the developer console, either.

I've read the django-debug-toolbar installation docs and am out of ideas.

Does anyone have any suggestions for debugging? I'm running OSX and Django 1.7. The curious thing is that debug-toolbar WAS appearing just fine - I think I've made some tweak that caused it to vanish, but I don't know what.

UPDATE: I've even tried adding this in my settings file, which is supposed to force the toolbar to appear:

def show_toolbar(request):
    return True
SHOW_TOOLBAR_CALLBACK = show_toolbar

But it doesn't help.

I've also tried throwing a deliberate exception in my view, so that I can check DEBUG is on and all the settings are as above. They are, and still no toolbar!

UPDATE 2: When I set INTERNAL_IPS=('127.0.0.1',), I start to see debug-toolbar requests in the console, but no toolbar on the page.

And the following HTML appears in my page - so the toolbar is there, but it's not visible because it's got display=none set all over it:

enter image description here

Answer

Greg Brown picture Greg Brown · Dec 17, 2016

I had the same problem but managed to fix it following dvl's comment on this page. Here is a summary of the fix:

In settings.py

if DEBUG:
    MIDDLEWARE += (
        'debug_toolbar.middleware.DebugToolbarMiddleware',
    )
    INSTALLED_APPS += (
        'debug_toolbar',
    )
    INTERNAL_IPS = ('127.0.0.1', )
    DEBUG_TOOLBAR_CONFIG = {
        'INTERCEPT_REDIRECTS': False,
    }

In the project urls.py, add this url pattern to the end:

from django.conf import settings

if settings.DEBUG:
    import debug_toolbar

    urlpatterns += [
        url(r'^__debug__/', include(debug_toolbar.urls)),
    ]