如何只为1个应用程序覆盖django edit_inline / tabular.html?

时间:2010-02-15 02:45:07

标签: django-admin django-templates

如果我将其保存在整个模板目录中(例如edit_inline/tabular.html),我可以覆盖mysite/templates/admin/edit_inline/tabular.html,但是当我尝试使用其他管理模板保存它时,例如change_form.html(在mysite/myapp/templates/admin/myapp/mymodel/change_form.html,它不起作用。

3 个答案:

答案 0 :(得分:11)

我遇到过这个有点旧的帖子,事实上对于内联模型,您需要在admin.py中明确设置新模板,如下所示:

class ModelInlineAdmin(admin.StackedInline):
    model = Product
    template = "admin/products/product/edit_inline/stacked.html"

检查 http://blog.ruedaminute.com/2011/05/django-journal-override-a-django-admin-template-inline-or-otherwise/

答案 1 :(得分:5)

The documentation暗示内联可以具有template属性。尝试将其设置为admin/myapp/mymodel/edit_inline/tabular.html并在templates的{​​{1}}目录中创建相应的模板文件。

答案 2 :(得分:-1)

表格是这样的:

模板/管理/ APP_NAME / override.html

对于你的change_form.html示例,它应该是这样的:

mysite的/模板/管理/ MyApp的/ change_form.html

有关详情,请参阅http://docs.djangoproject.com/en/dev/ref/contrib/admin/#overriding-admin-templates