gpt4 book ai didi

django - 我可以在管理页面上使用 django debug_toolbar 吗?

转载 作者:行者123 更新时间:2023-12-01 15:06:18 25 4
gpt4 key购买 nike

(注意:答案是合格的"is" - 如果不是我的 requirejs 配置问题,它应该可以工作 - 请参阅最后的更新)

我正在考虑为许多模型定制管理员,这些模型需要精明的最终用户进行维护。

我见过很多 SO 问题,例如 How to override and extend basic Django admin templates? , 关于如何实现这一目标。

我希望了解管理员在任何特定时间点使用的模板文件是高效定制的关键。因此,我重新启用了 Django 调试工具栏(希望这次没有 requirejs 的副作用)。

Django 调试工具栏可以正常工作并显示在我的应用程序页面中。但它不会显示在管理页面上。这是可以预料的吗?

enter image description here

Django (1.8.11)
django 调试工具栏 (1.4)

为什么它不工作/更新:

我想我知道发生了什么。当查看 Firebug 以查看管理页面涉及哪些 CSS 时,我注意到它正在请求调试工具栏 CSS:

http://localhost:8000/static/debug_toolbar/css/toolbar.css

这让我又想到了 requireJS 的不兼容问题。果然,在控制台中,我看到了这个错误。

类型错误:$ 未定义 http://localhost:8000/static/debug_toolbar/js/toolbar.js第297行

所以,又是一个 requireJS-DJT 故障。

仅供引用,我的 requireJS 调试工具栏解决方法是(来自 https://github.com/django-debug-toolbar/django-debug-toolbar/issues/605 ):

settings.py

DEBUG_TOOLBAR_CONFIG = {
"JQUERY_URL": None,

在我的应用程序的基本模板中:

(这是管理页面中缺少的部分)

{% block requirejs %}

//as per DJDT recommendations, make sure jquery loads before requireJS
<script type="text/javascript" src="/static/websec/external/jquery-2.1.1.min"></script>



<script type="text/javascript" src="{{STATIC_URL}}websec/external/require.js"></script>
<script>
//defines the requirejs configuration in general.
{% include "websec/requirejs_config.html" %}
</script>

最佳答案

为最终用户使用内置的管理后端通常被认为是不好的做法。

尝试检查 foy <body></body>页面中的标签。没有这些,它不会加载。

然后尝试在 settings.py 中添加 INTERNAL_IPS = ('127.0.0.1')

要使其仅供管理面板内的用户加载,您可以将标签添加到自定义管理页面并更改 settings.DEBUG_TOOLBAR_CONFIG['INSERT_BEFORE']
文档:here

最后要强制它显示在任何地方,你可以尝试将它添加到设置文件中:

def show_toolbar(request):
return True
DEBUG_TOOLBAR_CONFIG = {
"SHOW_TOOLBAR_CALLBACK" : show_toolbar,
}

停止调试工具栏检查它是否应该出现,它总是将仅用于测试/开发目的。所有其他用户也可以看到它。

文档:here .

关于django - 我可以在管理页面上使用 django debug_toolbar 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37620500/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com