How to output a comma delimited list in jinja python template?

前端 未结 3 861
半阙折子戏
半阙折子戏 2020-12-22 16:56

If I have a list of users say [\"Sam\", \"Bob\", \"Joe\"], I want to do something where I can output in my jinja template file:

{%          


        
3条回答
  •  天涯浪人
    2020-12-22 17:19

    And using the joiner from http://jinja.pocoo.org/docs/dev/templates/#joiner

    {% set comma = joiner(",") %}
    {% for user in userlist %}
        {{ comma() }}{{ user }}
    {% endfor %}  
    

    It's made for this exact purpose. Normally a join or a check of forloop.last would suffice for a single list, but for multiple groups of things it's useful.

    A more complex example on why you would use it.

    {% set pipe = joiner("|") %}
    {% if categories %} {{ pipe() }}
        Categories: {{ categories|join(", ") }}
    {% endif %}
    {% if author %} {{ pipe() }}
        Author: {{ author() }}
    {% endif %}
    {% if can_edit %} {{ pipe() }}
        Edit
    {% endif %}
    

提交回复
热议问题