Python Django:嵌套的自定义模板标记

Python Django:嵌套的自定义模板标记,python,django,templates,Python,Django,Templates,我已经在Django中编写了2个自定义模板标记。 目标是在另一个自定义标记中使用一个自定义标记。允许吗? 自定义“外部”标记的模板如下所示: <ul> {% for type in types %} {% custom_internal_tag param1 %} {% endfor %} </ul> {类型中的类型为%} {%custom_internal_tag param1%} {%endfor%} 渲染后会导致 无效的块标

我已经在Django中编写了2个自定义模板标记。 目标是在另一个自定义标记中使用一个自定义标记。允许吗? 自定义“外部”标记的模板如下所示:

<ul>
    {% for type in types %}
         {% custom_internal_tag param1 %}
    {% endfor %}
</ul>
    {类型中的类型为%} {%custom_internal_tag param1%} {%endfor%}
渲染后会导致

无效的块标记:“自定义\u内部\u标记”,应为“空”或“endfor”


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

它们是绝对允许的,但由于自定义标记未正确定义、定位或加载,因此可能会出现这种错误

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


参考资料:

事实上,我的外部标签模板没有包含{%load internal{U tag%}代码。在我的例子中-当一些自定义标签包含其他自定义标签时,比如说:
{%tag{U from_lib1%}{%tag{U from_lib2%}{%endtag}我必须首先加载
lib2
,然后
lib1
,也就是说,我必须更改
{%load lib2 lib1%}
{%load lib2%}{%load lib1%}
。否则将出现“无效块标记”错误。