Как сделать вложенные комментарии в Flask / Jinja? - PullRequest
4 голосов
/ 08 августа 2011

Как комментарии в Hacker News и Reddit. Я посмотрел на документы Джинджи, но не могу найти ничего о рекурсии (что я предполагаю, как это делается). Есть идеи?

Заранее спасибо.

РЕДАКТИРОВАТЬ:

У меня уже есть данные (из API), и комментарии - это объекты, у которых есть дети. Мне просто нужно знать, как сделать детей рекурсивными в Джинджа.

Ответы [ 2 ]

7 голосов
/ 08 августа 2011

Если вы не приведете пример того, как размечены ваши комментарии, я могу привести лишь базовый пример того, как рекурсивно для циклов работает:

{%- for item in comments recursive %}
    <li>{{ item.text }}</li>
    {%- if item.children -%}
        <ul class="children">{{ loop(item.children) }}</ul>
    {%- endif %}</li>
{%- endfor %}
5 голосов
/ 08 августа 2011

Используйте макросы, они поддерживают рекурсию.http://jinja.pocoo.org/docs/templates/#macros

Редактировать: для циклов также поддерживается рекурсия, это также будет работать.http://jinja.pocoo.org/docs/templates/#for

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