Как использовать уникальный фильтр Jijna2 - PullRequest
0 голосов
/ 31 октября 2018

Я пытаюсь отображать только уникальные результаты в цикле jinja for. У меня

{% for i in items %}
    {{ i.item_name | unique }}
{% endfor %}

Я получаю эту ошибку: jinja2.exceptions.TemplateAssertionError: нет фильтра с именем 'unique' . Любая помощь будет оценена.

1 Ответ

0 голосов
/ 31 октября 2018

EDIT

unique добавлено в версии 2.10. Вы можете проверить журнал изменений и PR .

Чтобы обновить версию jinja2, вы можете сделать:

pip install --upgrade jinja2

Это работает для меня в версии 2.10, применяя фильтр непосредственно к списку:

from jinja2 import Template


template = Template("""
  {% for x in a|unique %}
    <li>{{ x }}</li>
  {% endfor %}
""")

r = template.render(a=[1, 2, 3, 4, 1, 5, 4])

print(r)

Выход:

<li>1</li>

<li>2</li>

<li>3</li>

<li>4</li>

<li>5</li>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...