1

我尝试使用包含标签创建最简单的包含标签。

\main
    \templatetags
        \tegs_test.py
        \__init__.py

Python tegs_test.py:

from django import template

register = template.Library()

@register.inclusion_tag('test.html')
def test_something():
    return {'test_list':[1,2,3,4,5]}

模板 test.html:

{% load tegs_test %}
{% test_something %}

{% for i in test_list %}
    {{ i }}
{% endfor %}

结束我在setting.INSTALLED_APPS中注册main。当我尝试打开 test.html 时出现错误:

渲染时捕获 RuntimeError:调用 Python 对象时超出最大递归深度

请帮忙解决这个问题。谢谢。

4

1 回答 1

2

{% test_something %}调用模板test.html,它再次调用{% test_something %}等等......

您需要使用标签指向不同的模板或使用过滤器。

于 2012-07-05T10:30:12.253 回答