单击Django调试工具栏选项卡会导致404 Not Found错误

时间:2017-05-18 10:08:22

标签: django-debug-toolbar

我正在尝试在我的Django 1.10项目中分析和优化我的sql查询,因此尝试设置Django Debug Toolbar。现在,我可以看到工具栏显示在浏览器的左侧,但是当我点击标签时,我最终得到404错误。enter image description here

  

GET   http://127.0.0.1:8000/debug/render_panel/?store_id=10d77fee31c2425aafb5a2cd7898111f&panel_id=SQLPanel   404(未找到)

我的URLConf文件:

urlpatterns = []
if settings.DEBUG:
    import debug_toolbar
    urlpatterns = (url(r'^__debug__/', include(debug_toolbar.urls)),)

urlpatterns += (
    url(r'', include('my_project_urls.urls')),
    # ...
)

settings.py(仅限相关内容):

ROOT_URLCONF = 'android_blend.urls'
PROJECT_ROOT = os.path.abspath(os.path.dirname(__file__))
STATIC_URL = '/static/'

if DEBUG:
    MEDIA_URL = '/media/'
    STATIC_ROOT = os.path.join(os.path.dirname(BASE_DIR),"static","static-only")
#STATIC_ROOT = [os.path.join(BASE_DIR,"static-only")]
    MEDIA_ROOT = os.path.join(os.path.dirname(BASE_DIR),"static","media")
#MEDIA_ROOT = [os.path.join(BASE_DIR,"media")]
    STATICFILES_DIRS = (
        os.path.join(BASE_DIR,"static"),
    )

def show_toolbar(request):
    if not request.is_ajax() and request.user and request.user.id == 4:
        return True
    return False

DEBUG_TOOLBAR_CONFIG = {'SHOW_TOOLBAR_CALLBACK': 'android_blend.settings.show_toolbar'}

我将错误归咎于有关静态文件的错误设置。在cmd中,当我导航到项目根文件夹并运行python manage.py collectstatic时,我看到桌面上出现了一个名为static的文件夹,而不是项目根目录。我手动将新创建的static-only文件夹中的static文件夹复制到项目根目录的静态文件夹中,但同样没有成功。任何人都可以帮我找到解决方案吗?任何提示都将不胜感激。

1 个答案:

答案 0 :(得分:0)

从最近的django-debug-toolbar版本(1.9.1)开始,我已降级为较旧的版本(1.6),我不再获得404.