无法更改 Django 管理模板
Posted
技术标签:
【中文标题】无法更改 Django 管理模板【英文标题】:Can't change Django admin template 【发布时间】:2015-05-01 12:11:45 【问题描述】:刚开始an official Django tutorial 已经遇到问题,无法在管理面板中更改页面名称。我正在尝试按照教程中的建议用 base_site.html
中的自定义内容替换默认的 Django administration
(我从 django 源目录复制到我的应用程序中的文件,试图将其移入/移出 polls 目录等。 ),
我在设置中添加了TEMPLATE_DIRS = [os.path.join(BASE_DIR, 'templates')]
,在installed apps
中也添加了'polls',
,但没有任何变化。
有什么建议可以让它发挥作用吗?
谢谢
【问题讨论】:
【参考方案1】:如果你只像这样改变括号内的值是行不通的
site_header|default:_('Your custom name')
你需要做的是你必须像这样用你想要的名字替换上面的所有内容。
% extends "admin/base.html" %
% block title % title | YOUR CUSTOM NAME% endblock %
% block branding %
<h1 id="site-name"><a href="% url 'admin:index' %">YOUR CUSTOM NAME</a></h1>
% endblock %
% block nav-global %% endblock %
【讨论】:
【参考方案2】:我在 Django 站点的根级别创建了一个模板文件夹。
base-folder
--apps
--templates
----admin
------base_site.html
我按照我的意愿编辑了 base_site.html,我只是像你想要的那样更改了名称。然后我将此行添加到我的 settings.py 中
TEMPLATE_DIRS = [os.path.join(BASE_DIR, 'templates')]
这对我有用。如果您在键入 /admin 时看到管理站点,则表示您的 url-config
已设置。只需确保您的 TEMPLATE_DIRS
与管理模板的目录匹配。 templates
目录中应该有 admin
目录,其中包含管理页面的所有必要模板。
【讨论】:
我有完全相同的设置/项目层次结构。还是不行。 @ikechi 并且您确定您已将编辑保存到 base_site.html? @ikechi 和您的设置文件也正确设置了变量 BASE_DIR?您可能想查看来自this question 的最佳答案 更改为abspath
没有帮助。我真的不知道是什么问题。以上是关于无法更改 Django 管理模板的主要内容,如果未能解决你的问题,请参考以下文章