Конкатенация строк в Джиндже

Я просто хочу циклично выполниться через существующий список и сделать разграниченную строку запятой из него.
Что-то вроде этого: my_string = 'stuff, stuff, stuff, stuff'

Я уже знаю о loop.last, Я просто должен знать, как сделать третью строку в моем коде ниже РАБОТЫ.

{% set my_string = '' %}
{% for stuff in stuffs %}
{% set my_string = my_string + stuff + ', '%}
{% endfor%}
43
задан bernie 14 January 2010 в 03:22
поделиться

2 ответа

Если вещи - это список строк, только это будет работать:

{{ stuffs|join(", ") }}

ссылка к документации.

69
ответ дан 26 November 2019 в 22:44
поделиться

Мой плохой, при попытке упростить его, я зашел слишком далеко, на самом деле на самом деле - это запись всех видов информации, я просто хочу идентификатор в нем.

stuffs = [[123, first, last], [456, first, last]]

Я хочу my_sting [11288862]

my_sting = '123, 456'

Мой исходный код должен был выглядеть так:

{% set my_string = '' %}
{% for stuff in stuffs %}
{% set my_string = my_string + stuff.id + ', '%}
{% endfor%}

думать об этом, вещи , вероятно, является словарь, но вы получаете суть Отказ

Да я нашел присоединиться фильтр , и собирался подойти к нему так:

 {% set my_string = [] %}
 {% for stuff in stuffs %}
 {% do my_string.append(stuff.id) %}
 {% endfor%}
 {%  my_string|join(', ') %}

, но приложение не работает без импорта расширений, и чтение этой документации дала мне Головная боль. Он явно не говорит, где его импортировать его из или даже там, где вы поставили оператор импорта, поэтому я полагал, что поиск способа Concat будет меньше из двух зла.

8
ответ дан 26 November 2019 в 22:44
поделиться
Другие вопросы по тегам:

Похожие вопросы: