Добро пожаловать, Джит!
Во-первых, вы никогда не вкладываете теги Liquid. Ваш основной цикл должен выглядеть примерно так:
{% assign legs = Predept.legs %}
{% for leg in legs %}
<!-- Cool code & stuff here! -->
{% endfor %}
Теперь в Liquid вы можете создать новый массив только с помощью фильтра split
для строки. Мы также можем создать строку, обернув другие команды тегом capture
. Собирая это вместе, мы получаем что-то вроде:
{% capture leg_data %}
{% assign legs = Predept.legs %}
{% for leg in legs %}
{% if leg.direction == 'R' %}
{% comment %}Output delimiter if needed {% endcomment %}
{% unless found_one %},{% endunless %}
{% assign found_one = true %}
{{ leg.arr_station_name }}
{% endif %}
{% endfor %}
{% endcapture %}
{% assign leg_data = leg_data | split: ',' %}
Это даст нам массив всех наших arr_station_name
для желаемых ног, но вы можете заметить, что capture
также захватывает все пробелы в нем. Если нам нужно предотвратить попадание этого в наш симпатичный маленький массив, мы можем использовать символ -
для удаления пробелов в наших тегах, чтобы контролировать это, давая:
{%- capture leg_data -%}
{%- assign legs = Predept.legs -%}
{%- for leg in legs -%}
{%- if leg.direction == 'R' -%}
{%- comment -%}Output delimiter if needed {%- endcomment -%}
{%- unless found_one -%},{%- endunless -%}
{%- assign found_one = true -%}
{{- leg.arr_station_name -}}
{%- endif -%}
{%- endfor -%}
{%- endcapture -%}
{%- assign leg_data = leg_data | split: ',' -%}
Надеюсь, это поможет!