2012-02-02 2 views
1

В моем заказном включении тега, например:Как разобрать фильтры inclusion_tag

@register.inclusion_tag('templatetags/div_text.html') 
def div_text(text): 
    return {'text' : text} 

в то время как в другой странице, как show.html, когда я пытаюсь использовать этот тег как

{% div_text list|length %} 

Джанго вызывает ошибку:

Caught VariableDoesNotExist while rendering: Failed lookup for key [list|length] 

Я задаюсь вопросом, почему это произойдет.

+1

выглядит, как вы пытаетесь использовать длину фильтра внутри тега, я не думаю, что это возможно. И зачем писать такой тег? Просто передайте текст в контекст как переменную, на которую можно применить фильтр длины. – Jingo

+1

, по сути, я обнаружил, что встроенные теги могут анализировать эти встроенные фильтры. Примером может быть {% if list | length>%}, это действительно работает –

ответ