如何更改Django admin头中的“Django administration”文本?
“自定义管理”文档中似乎没有涉及到这一点。
如何更改Django admin头中的“Django administration”文本?
“自定义管理”文档中似乎没有涉及到这一点。
当前回答
只需转到admin.py文件,并在文件中添加这一行:
admin.site。site_header = "我的政府"
其他回答
你只需要覆盖admin/base_site.html模板(从django.contrib.admin.templates中复制模板并放入你自己的管理模板dir中)并替换branding块。
从Django 1.7开始,你不需要重写模板。现在,您可以在自定义AdminSite上实现site_header、site_title和index_title属性,以便轻松更改管理站点的页面标题和标题文本。创建一个AdminSite子类,并将你的实例绑定到URLconf中:
admin.py:
from django.contrib.admin import AdminSite
from django.utils.translation import ugettext_lazy
class MyAdminSite(AdminSite):
# Text to put at the end of each page's <title>.
site_title = ugettext_lazy('My site admin')
# Text to put in each page's <h1> (and above login form).
site_header = ugettext_lazy('My administration')
# Text to put at the top of the admin index page.
index_title = ugettext_lazy('Site administration')
admin_site = MyAdminSite()
urls . py:
from django.conf.urls import patterns, include
from myproject.admin import admin_site
urlpatterns = patterns('',
(r'^myadmin/', include(admin_site.urls)),
)
更新:正如oxfn所指出的,你可以直接在urls.py或admin.py中设置site_header,而不需要子类化AdminSite:
admin.site.site_header = 'My administration'
因为我只在我的应用程序中使用管理界面,我把这个放在admin.py中:
admin.site.site_header = 'My administration'
你可以在你的主urls.py中使用下面这些行
您可以在要显示的引号中添加文本
使用admin.site替换Django admin的文本。Site_header = ""
替换文本Site Administration使用admin.site。Site_title = ""
要替换站点名称,可以使用admin.site。Index_title = ""
要替换视图站点按钮的url,可以使用admin.site。Site_url = ""
使用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)