为了向Django模型的管理界面添加一些内容,我想覆盖
然而,我利用 django-guardian 进行对象权限管理。这个 Django 应用程序也覆盖了
change_form.html
模板。根据文档,我需要在路径 /project-path/templates/admin/appname/modelname/
中创建一个名为change_form.html
的文件。当然,我需要确保这个路径也在TEMPLATE_DIRS
中可用。这样的文件可能如下所示:{% extends "admin/change_form.html" %}
{% load i18n %}
{% block after_field_sets %}
SOME CONTENT
{% endblock %}
然而,我利用 django-guardian 进行对象权限管理。这个 Django 应用程序也覆盖了
change_form.html
(运行正常--相关源代码看起来像是 这里),但 Django 没有捕捉到我的模板扩展文件(例如上面示例中的 "SOME CONTENT" 未显示)。我想要覆盖的块/部分与 django-guardian 覆盖的不同,并且最终我想要将 django-guardion 的 change_form.html
添加到我的模板中。
那么我做错了什么?多个应用程序覆盖管理模板可行吗?
如果感兴趣,这是我的 TEMPLATE_LOADERS
设置:
TEMPLATE_LOADERS = (
'django.template.loaders.filesystem.Loader',
'django.template.loaders.app_directories.Loader'
)
此外,django-guardian是INSTALLED_APPS
数组中的最后一个应用程序。
{% include "admin/guardian/model/change_form.html" %}
,并只使用你的模板。 - MeehowFORM_RENDERER = 'django.forms.renderers.TemplatesSetting'
https://docs.djangoproject.com/en/1.11/ref/forms/renderers/ - Meehow