如何更改Django admin头中的“Django administration”文本?
“自定义管理”文档中似乎没有涉及到这一点。
如何更改Django admin头中的“Django administration”文本?
“自定义管理”文档中似乎没有涉及到这一点。
当前回答
对于Django 2.1.1,在urls.py中添加以下行
from django.contrib import admin
# Admin Site Config
admin.sites.AdminSite.site_header = 'My site admin header'
admin.sites.AdminSite.site_title = 'My site admin title'
admin.sites.AdminSite.index_title = 'My site admin index'
其他回答
更新:如果你使用的是Django 1.7+,请参阅下面的答案。
2011年的原始答案: 为此,您需要创建自己的管理base_site.html模板。最简单的方法是创建文件:
/<projectdir>/templates/admin/base_site.html
这应该是原始base_site.html的副本,除了放入您的自定义标题:
{% block branding %}
<h1 id="site-name">{% trans 'my cool admin console' %}</h1>
{% endblock %}
为此,你需要为你的项目设置正确的设置,即在settings.py中:
确保/projectdir/templates/被添加到TEMPLATE_DIRS中。 确保django.template.loaders. filessystem .loader被添加到TEMPLATE_LOADERS中。
有关settings.py的更多信息,请参阅文档。
最简单的方法 确保你有
from django.contrib import admin
然后把这些添加到主程序的url。py底部
admin.site.site_title = "Your App Title"
admin.site.site_header = "Your App Admin"
对于Django 2.1.1,在urls.py中添加以下行
from django.contrib import admin
# Admin Site Config
admin.sites.AdminSite.site_header = 'My site admin header'
admin.sites.AdminSite.site_title = 'My site admin title'
admin.sites.AdminSite.index_title = 'My site admin index'
从Django 2.0开始,你只需要在url.py中添加一行代码并更改名称。
# url.py
from django.contrib import admin
admin.site.site_header = "My Admin Central" # Add this
对于较旧版本的Django。(<1.11或更早的版本),您需要编辑admin/base_site.html
改变这一行
{% block title %}{{ title }} | {{ site_title|default:_('Django site admin') }}{% endblock %}
to
{% block title %}{{ title }} | {{ site_title|default:_('Your Site name Admin Central') }}{% endblock %}
你可以检查你的django版本
django-admin --version
正如您在模板中看到的,文本是通过本地化框架传递的(注意使用了trans模板标记)。您可以对翻译文件进行更改,以覆盖文本,而无需制作自己的模板副本。
mkdir语言环境 。/ jobs makemessages 编辑区域设置/ en / LC_MESSAGES / django。阿宝,加上这些台词: msgstr "Django站点管理" msgstr "MySite站点管理" msgstr "Django管理" msgstr "MySite管理" 。/ jobs compilemessages
看到https://docs.djangoproject.com/en/1.3/topics/i18n/localization/消息文件