2012-02-25 111 views
1

我尝试自定义我的管理面板。我抄change_list.html到合适的子文件夹是templates -> admin -> model -> change_list.htmlDjango管理员自定义模板标记

虽然我自定义change_list.html我想用一个templatetag,但我不知道我应该在哪里把我的自定义模板标签库。

当我把它放在django/contrib/admin/templatetags/下,它工作正常,但我想保留在我自己的项目树中。

你有什么想法吗?

注:我也加载我在change_list.html模板标签作为

{% load adminmedia admin_list i18n grp_tags myproject_tags %} 

感谢

回答

3

修改或添加任何含Django的目录(不修改Django的!)。将所有内容保存在项目目录中(如the manual)。

管理模板与非管理模板完全相同,您可以使用自定义模板标记完全相同的方式。将您的模板标签放在yourapp/templatetags/目录中。如果您的应用位于settings.INSTALLED_APPS中,您可以通过将模块名称传递给load标签来加载它的标签。它也接受package.module语法,所以:{% load somelibrary %}{% load package.otherlibrary %}

+3

换句话说,只需将模板标签放置在* your *应用程序中的一个“templatetags”模块中,就如同其他模板标签一样。您可以将它们加载到管理员中,就像它是您自己的模板一样。它以同样的方式工作。 – 2012-02-25 18:53:59