django 1.9 + customizing admin interface

7 浏览
0 Comments

django 1.9 + customizing admin interface

我正在使用Django1.9并尝试覆盖管理界面。\n我参考了以下链接来覆盖管理界面的标题:http://stackoverflow.com/questions/4938491/django-admin-change-header-django-administration-text\n如帖子中所述,我的目录/文件结构是:\nsrc->templates->admin->base_site.html\nbase_site.html的内容如下:\n

{% extends "admin/base.html" %}
{% block title %}Personal Site{% endblock %}
{% block branding %}

Control Panel

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

\n但是这个页面没有被调用。我从https://github.com/django/django/blob/master/django/contrib/admin/templates/admin/base_site.html复制了base_site.html的代码,并对标题进行了更改。\n我知道我可以在Django中配置管理界面的标题,但这不是我想要的。我长期目标是配置整个管理界面。所以请告诉我如何调用这个自定义模板页面。\n这是我的模板设置:\n

TEMPLATES = [
    {
        'BACKEND': 'django.template.backends.django.DjangoTemplates',
        'DIRS': [
           os.path.join(BASE_DIR,'templates'),
        ],
        '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',
            ],
            'loaders':[
                    'django.template.loaders.filesystem.Loader',
                    'django.template.loaders.app_directories.Loader'
            ]
        },
    },
]

\n谢谢\nAniruddha

0
0 Comments

在Django 1.9中,当我们想要自定义管理界面时,需要配置项目的管理模板目录。解决方法如下:

1. 在项目的`contrib/admin/templates/admin`目录下配置管理模板目录。

2. 为了覆盖默认的模板,我们需要创建一个`customadmin`目录,放在`templates`目录下。

3. 我们可以自定义`loaders`选项,通过添加`'django.template.loaders.filesystem.Loader'`(必须在`'django.template.loaders.app_directories.Loader'`之前写)来加载自定义模板。这样会在默认模板之前加载自定义模板。

4. 在`customadmin`目录下创建与应用程序同名的子目录,如果想要为应用程序进行覆盖。

5. 在上述子目录中,为要覆盖的模型创建子目录,并将其命名为模型的名称。

6. 在所需的目录中创建自定义的扩展模板(通常是HTML文件)。

恭喜!您已经成功扩展了默认提供的管理界面。

以上就是如何配置项目的管理模板目录的方法。

0