Django模板标签不起作用

时间:2015-11-04 10:17:44

标签: python django

模板标签:

from django import template

register = template.Library()

@register.filter(name='mod')
def mod(value, arg):
    return value % arg

使用:

{% load tree_filters %}

<script type="text/javascript">
...
                {% for child in user.tree_node1.grandchildren.all %}
                    {
                        id: {{ child.account.id }},
                        label: "{{ child }}",
                        shape: 'box',
                        color: colors[{{ child.level|mod: 10 }}]
                    },
                {% endfor %}

            ]);
...
        </script>

我实际上尝试使用django_math_filters包&#34; mod&#34;但我也遇到了同样的错误:

mod requires 2 arguments, 1 provided

哪里错了?

1 个答案:

答案 0 :(得分:2)

{{ child.level|mod:'10' }}

您需要在传递的参数之前删除空格并将参数作为字符串传递。 Django不允许模板过滤器中的空格。