如何更改Django admin头中的“Django administration”文本?
“自定义管理”文档中似乎没有涉及到这一点。
如何更改Django admin头中的“Django administration”文本?
“自定义管理”文档中似乎没有涉及到这一点。
当前回答
在urls.py中,你可以覆盖3个最重要的变量:
from django.contrib import admin
admin.site.site_header = 'My project' # default: "Django Administration"
admin.site.index_title = 'Features area' # default: "Site administration"
admin.site.site_title = 'HTML title from adminsitration' # default: "Django site admin"
参考:关于这些属性的Django文档。
其他回答
使用format_html允许html被呈现,否则它将只是纯文本。
在你的主url .py文件中添加以下内容(url .py在settings.py存在的目录中):
from django.contrib import admin
from django.utils.html import format_html
site_header = 'Your html snippet'
admin.site.site_header = format_html(site_header)
有一个简单的方法来设置管理站点头-分配给当前的管理实例在urls.py像这样
admin.site.site_header = 'My admin'
或者你也可以用另一种方法来实现一些创建头部的魔法
admin.site.site_header = get_admin_header()
因此,在简单的情况下,不需要继承AdminSite的子类
首先,您应该将templates/admin/base_site.html添加到项目中。这个文件可以安全地被覆盖,因为Django开发人员是为了定制您的管理站点而设计的这个文件。下面是在文件中放入内容的示例:
{% extends "admin/base.html" %}
{% load i18n %}
{% block title %}{{ title }} | {% trans 'Some Organisation' %}{% endblock %}
{% block branding %}
<style type="text/css">
#header
{
/* your style here */
}
</style>
<h1 id="site-name">{% trans 'Organisation Website' %}</h1>
{% endblock %}
{% block nav-global %}{% endblock %}
这是常见的做法。但我注意到,在这之后,我仍然在主管理索引页上留下了一个烦人的“网站管理”。这个字符串不在任何模板中,而是在管理视图中设置的。幸运的是,这很容易改变。假设你的语言设置为英语,在你的项目目录中运行以下命令:
$ mkdir locale
$ ./manage.py makemessages -l en
现在打开locale/en/LC_MESSAGES/django文件。Po并在标题信息后添加两行(本例的最后两行)
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-04-03 03:25+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
msgid "Site administration"
msgstr "Main administration index"
在此之后,记得运行以下命令并重新加载项目的服务器:
$ ./manage.py compilemessages
来源:http://overtag.dk/wordpress/2010/04/changing-the-django-admin-site-title/
您可以使用AdminSite。Site_header来更改文本。这里是文档
只需转到admin.py文件,并在文件中添加这一行:
admin.site。site_header = "我的政府"