我现在正在使用模板标签,有一件事我还没理解为什么模板标签必须存储在应用程序的templatetags
目录中。这有什么潜在的原因吗?有可能以某种方式将它们存储在templatetags.py文件中,以便我可以减少额外目录周围的额外膨胀吗?
答案 0 :(得分:3)
Django希望您以某种方式安排您的应用。在应用程序中需要templatetags目录也不例外。其他一些要求是:
admin.py
中的ModelAdmin(用于自动发现)models.py
management/commands
目录中的管理命令fixtures
目录中的灯具与模板不同,模板中有钩子来指定模板的加载方式,没有简单的方法可以将模板标签模块存储在不同的位置。
答案 1 :(得分:1)
虽然我同意Alasdair的理由,但标准的django期望是在相应的app文件夹中包含admin
,models
,templates
和templatetags
,我认为有不必要的样板关联。
我认为正是出于这个原因,有很多第三方应用:https://github.com/ojii/django-classy-tags,https://github.com/justquick/django-native-tags和https://github.com/alex/django-templatetag-sugar来减少锅炉板。