change_form.htmlモデルの Django 管理ビューにコンテンツを追加するために、テンプレートをオーバーライドしたいと考えています。ドキュメントによるとchange_form.html、フォルダーにファイルを作成する必要があります/project-path/templates/admin/appname/modelname/。もちろん、このパスが で利用可能であることを確認する必要があります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 がオーバーライドするものと同じではなくchange_form.html、最終的には django-guardionとテンプレートを追加したいと考えています。
ここで何が間違っていますか?また、管理テンプレートをオーバーライドする複数のアプリケーションを持つことはまったく可能ですか?
興味がある場合、これは私のTEMPLATE_LOADERS設定です:
TEMPLATE_LOADERS = (
'django.template.loaders.filesystem.Loader',
'django.template.loaders.app_directories.Loader'
)
また、django-guardian はINSTALLED_APPS配列の最後のアプリです。