Django 仅对一个图像应用程序使用修改后的管理模板

Django 仅对一个图像应用程序使用修改后的管理模板,django,django-templates,Django,Django Templates,Django 3.0.6 对于一个模型,我需要一个修改后的管理网站模板 也就是说,我想修改这个模板: admin/includes/fieldset.html 我已从Django软件包目录复制了fieldset.html,并将其放置如下: /my_project/image/templates/admin/includes/fieldset.html 这是我的申请表。此应用程序需要修改的管理模板 问题是,所有其他模型也都会获得此模板。而且使用的模板过滤器没有接收到必要的参数,因此会爆炸 文件

Django 3.0.6

对于一个模型,我需要一个修改后的管理网站模板

也就是说,我想修改这个模板:

admin/includes/fieldset.html
我已从Django软件包目录复制了fieldset.html,并将其放置如下:

/my_project/image/templates/admin/includes/fieldset.html
这是我的申请表。此应用程序需要修改的管理模板

问题是,所有其他模型也都会获得此模板。而且使用的模板过滤器没有接收到必要的参数,因此会爆炸

文件:

嗯,我弄糊涂了,没有组织好必要的目录结构


如何将修改后的模板仅用于一个图像应用程序?

您有几个问题。首先:

  • actions.html
  • app_index.html
  • change\u form.html
  • change\u form\u object\u tools.html
  • change\u list.html
  • change\u list\u object\u tools.html
  • change\u list\u results.html
  • date\u hierarchy.html
  • delete\u confirmation.html
  • object\u history.html
  • pagination.html
  • popup\u response.html
  • prepopulated_fields_js.html
  • search\u form.html
  • submit\u line.html
fieldset.html
不在其中,因此您需要查看包含模板是否在此列表中,如果在此列表中,请替换此模板并使用它包含您自己版本的
fieldset.html

另外,您的位置(由于无法覆盖每个应用程序包含的模板,所以略有修改):
/my\u project/image/templates/admin/template.html
不太正确。这将覆盖每个应用程序的模板。要为每个应用程序执行此操作,您需要admin下的另一个子目录:

/my_project/image/templates/admin/image/template.html

这是因为模板并不真正关心它们在哪个应用程序中,所以模板存在于你的
图像
应用程序中这一事实对Django没有任何意义,将它们放在应用程序的子目录中的惯例只是为了避免覆盖你不打算覆盖的模板。

你有几个问题。首先:

  • actions.html
  • app_index.html
  • change\u form.html
  • change\u form\u object\u tools.html
  • change\u list.html
  • change\u list\u object\u tools.html
  • change\u list\u results.html
  • date\u hierarchy.html
  • delete\u confirmation.html
  • object\u history.html
  • pagination.html
  • popup\u response.html
  • prepopulated_fields_js.html
  • search\u form.html
  • submit\u line.html
fieldset.html
不在其中,因此您需要查看包含模板是否在此列表中,如果在此列表中,请替换此模板并使用它包含您自己版本的
fieldset.html

另外,您的位置(由于无法覆盖每个应用程序包含的模板,所以略有修改):
/my\u project/image/templates/admin/template.html
不太正确。这将覆盖每个应用程序的模板。要为每个应用程序执行此操作,您需要admin下的另一个子目录:

/my_project/image/templates/admin/image/template.html
这是因为模板并不真正关心它们在哪个应用程序中,所以模板存在于你的
图像
应用程序中这一事实对Django来说并不意味着什么,将它们放在应用程序的子目录中的惯例只是为了避免覆盖你不想覆盖的模板