django 1.9 + customizing admin interface
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
在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文件)。
恭喜!您已经成功扩展了默认提供的管理界面。
以上就是如何配置项目的管理模板目录的方法。