每个模型覆盖 django admin change_list_results.html
Posted
技术标签:
【中文标题】每个模型覆盖 django admin change_list_results.html【英文标题】:override django admin change_list_results.html per model 【发布时间】:2013-08-14 11:56:03 【问题描述】:我正在尝试仅针对特定型号覆盖 change_list_results.html
。我尝试将文件与相应树目录(templates/admin/APP/MODEL
)中的其他模板一样复制,但这种方法不起作用。我在documentation 中看到可以覆盖每个应用程序/模型,但没有描述实现此目的的特殊方法。我找到了一些关于overriding change_list.html 的相关答案,但我只想覆盖change_list_results.html,我不明白如何做到这一点。执行此覆盖的方法是什么?
【问题讨论】:
【参考方案1】:我遇到了同样的问题,发现了这个旧帖子。我想你修好了你的。
无论如何,我做错的是使用模型的复数名称,而我也使用了小写名称。您必须确保以下几点:
如您所说,将您的模板保存在 /templates/admin/APP/MODEL 中 检查模型名称中的小写/大写 这听起来很傻,但以防万一……不要使用模型的复数名称祝你好运!
【讨论】:
有同样的问题,我有一个模型,它的名字是由两个词组成的(FooMoo)。在管理界面中,它被重写为“foo_moo”,但要覆盖模板,您需要创建一个名为“foomoo”的目录【参考方案2】:自从 freethinker6 的回答:change_list_results.html 当前是硬编码后,这可能已经改变。
【讨论】:
"对于 INSTALLED_APPS 中的每个应用程序,app_directories.Loader 会查找模板子目录。如果该目录存在,Django 会在其中查找模板。" (docs.djangoproject.com/en/1.11/ref/templates/api/…) 你可以用你自己的文件覆盖这个模板。但是,此覆盖将应用于管理员中的所有模型,并且问题询问如何为单个模型覆盖它。以上是关于每个模型覆盖 django admin change_list_results.html的主要内容,如果未能解决你的问题,请参考以下文章
仅针对某些模型覆盖 Django 管理员 change_list_results.html
html Django Admin:使用AJAX保存 - 覆盖`admin / change_form.html`模板
为我的应用程序之外的单个模型覆盖 django 管理员更改表单?
Django:覆盖每个应用程序而不是每个项目的“不可覆盖”管理模板?