无论我做什么,我都无法让django-debug-toolbar出现。我已经尝试了every answer on this question中建议的所有内容。
DEBUG=True
django.contrib.staticfiles
debug_toolbar
和INSTALLED_APPS
'debug_toolbar.middleware.DebugToolbarMiddleware'
MIDDLEWARE_CLASSES
高。{
INTERNAL_IPS = ()
print("IP Address for debug-toolbar: " + request.META['REMOTE_ADDR'])
,并打印IP Address for debug-toolbar: 127.0.0.1
</body></html>
pip install django-debug-toolbar
,没有任何问题python manage.py collectstatic
并且我的静态文件中有一个debug_toolbar
目录当我运行应用程序时,我在控制台中看不到包含django_debug_toolbar的任何URL的请求,因此我怀疑应用程序未加载。
我也没有在开发者控制台中看到任何失败的请求。
我已经阅读了django-debug-toolbar installation docs并且没有想法。
有没有人有任何调试建议?我正在运行OSX和Django 1.7。奇怪的是调试工具栏看起来很好 - 我想我做了一些调整,导致它消失,但我不知道是什么。
更新:我甚至尝试在我的设置文件中添加它,这应该会强制显示工具栏:
def show_toolbar(request):
return True
SHOW_TOOLBAR_CALLBACK = show_toolbar
但它没有帮助。
我还尝试在我的视图中抛出故意的异常,这样我就可以检查DEBUG是否已启动,所有设置如上所述。他们是,但仍然没有工具栏!
更新2:当我设置INTERNAL_IPS=('127.0.0.1',)
时,我开始在控制台中看到调试工具栏请求,但页面上没有工具栏。
以下HTML显示在我的页面中 - 因此工具栏就在那里,但它不可见,因为它已经设置了display=none
:
答案 0 :(得分:5)
我遇到了同样的问题,但设法在dvl's comment on this page之后修复了它。以下是修复的摘要:
在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,
}
在项目urls.py中,将此网址格式添加到结尾:
from django.conf import settings
if settings.DEBUG:
import debug_toolbar
urlpatterns += [
url(r'^__debug__/', include(debug_toolbar.urls)),
]
答案 1 :(得分:4)
display: none;
的所有div实际上都表现得很好。他们不会更改为display: block;
,直到您在工具栏中实际点击它们为止。
用于切换工具栏的按钮是带有id="djDebugToolbarHandle"
的div。正如您在控制台中看到的那样,此按钮的top
位置为2310px
。这意味着正在渲染,但它只是在页面下方。
尝试在控制台中键入以下内容以重置其位置:
document.getElementById('djDebugToolbarHandle').style.top="30px";
答案 2 :(得分:3)
当虚拟或远程计算机上的开发时,新闻用户的一些信息
在views.py文件中添加此ligne
print("IP Address for debug-toolbar: " + request.META['REMOTE_ADDR'])
调用视图时,您可以在shell中看到客户端IP
您必须将此IP添加到settings.py文件中 INTERNAL_IPS =('IP')
答案 3 :(得分:1)
django-debug-toolbar可能出现但未正确显示的一个原因(项目卡在“正在加载”中)是否还没有运行manage.py collectstatic。我以为我会在这里发帖,以防有人帮忙。
答案 4 :(得分:0)
我遇到了同样的问题。更改我的settings.py中的finder模块对我有用:
func makeSexp(parserName string, values ...interface{}) interface{} {
return append([]interface{}{parserName}, values...)
}
确保在此更改后清理浏览器缓存。
但在此之后,由于this issue,Django在STATICFILES_FINDERS = (
#'django.contrib.staticfiles.finders.FileSystemFinder', #THIS BREAKES debug_toolbar
'django.contrib.staticfiles.finders.AppDirectoriesFinder', #THIS WORKS
)
期间给了我错误消息。我解决了在settings.py中创建两个配置的问题:
collectstatic
我希望它有所帮助。
答案 5 :(得分:0)
我对 django-toolbar
有同样的问题
所有标签都有类 djdt-hidden
和隐藏
<div id="djDebug" class="djdt-hidden" dir="ltr" data-default-show="true">
我使用 pycharm
和 GoogleChrome
只使用 FireFox
就修复了