Django:嵌套的自定义模板标签

Ale*_*exA 3 python django templates

我在Django中编写了2个自定义模板标签.目标是在另一个内部使用一个自定义标记.是允许的吗?自定义"外部"标记的模板如下所示:

<ul>
    {% for type in types %}
         {% custom_internal_tag param1 %}
    {% endfor %}
</ul>
Run Code Online (Sandbox Code Playgroud)

在渲染结果之后

无效的块标记:'custom_internal_tag',预期'为空'或'endfor'

是否允许嵌套自定义标签?这种错误的原因是什么?

Yuv*_*dam 9

它们肯定是允许的,但是由于您的自定义标记未正确定义,定位或加载,因此可能会出现该错误.

确保所有自定义标记都位于您的app/templatetags目录中并正确加载,通常使用@register装饰器.

参考: https ://docs.djangoproject.com/en/dev/howto/custom-template-tags/#registering-custom-filters