【问题标题】:How do I change the name of the Django admin page?如何更改 Django 管理页面的名称?
【发布时间】:2018-11-21 09:56:39
【问题描述】:

我正在学习 Django

我看到了 django 教程第 7 部分

我想重命名 django 管理页面的名称

所以我做到了

但它没有奏效.....

mysite/mysite/settings.py

TEMPLATES = [
    {
        'BACKEND': 'django.template.backends.django.DjangoTemplates',
        'DIRS': [os.path.join(BASE_DIR, 'templates')],
        'APP_DIRS': True,
        'OPTIONS': {
            'context_processors': [
                'django.template.context_processors.debug',
                'django.template.context_processors.request',
                'django.contrib.auth.context_processors.auth',
                'django.contrib.messages.context_processors.messages',
            ],
        },
    },
]

mysite/templates/admin/base_site.html

{% extends "admin/base.html" %}

{% block title %}{{ title }} | {{ site_title|default:_('Django site admin') }}{% endblock %}

{% block branding %}
<h1 id="site-name"><a href="{% url 'admin:index' %}">{{ site_header|default:_('mysite') }}</a></h1>
{% endblock %}

{% block nav-global %}{% endblock %}

我从 Django 管理重命名为 mysite

【问题讨论】:

    标签: python django


    【解决方案1】:

    你需要做的

    {% block branding %}
    <h1 id="site-name"><a href="{% url 'admin:index' %}">Mysite</a></h1>
    {% endblock %}
    

    更好的方法

    只需转到项目的 urls.py 并将其添加到外部 urlpatterns。

    admin.site.site_header = 'My Site Admin Panel'
    admin.site.site_title = 'My Site Title'
    

    确保下面的行包含在顶部。

    from django.contrib import admin
    

    【讨论】:

      【解决方案2】:

      在您的admin.py 中使用这部分代码:

      from django.contrib import admin
      
      admin.site.site_title = "<your_title>"
      admin.site.site_header = "<your_header>"
      admin.site.index_title = "<your_index_title>"
      

      【讨论】:

        【解决方案3】:

        我们可以在中进行三个更改

        urls.py:

        admin.site.site_header = "....... Admin"
        admin.site.site_title = "..... Admin Portal"
        admin.site.index_title = "Welcome to........Portal"
        

        【讨论】: