Как создать массив с помощью Tera в Rust?

Я застрял в простой проблеме, но не могу ее понять. Я не уверен, что это подходящее место, чтобы задать вопрос о пакете в Rust. В большинстве случаев в шаблоне мы хотим преобразовать наши данные. Например, я хотел объединить n массивов в одну строку. Я могу использовать оператор ~, только если знаю количество массивов. Ниже приведено требование, которое я ищу,

{% macro generate_table(table) %}
    {% for rows in 0..table.length %}
        {{ table[table.col_header[0]][row] ~ "     ||      " ~ [table.col_header[1]][row] }}
    {% endfor %}
{% endmacro input %}

Я хочу делать.

{% macro generate_table(table) %}
    {% for rows in 0..table.rlength %}
        {% for cols in 0..table.clength %}
            {{ arr.insert(table[table.col_header[cols]][row]) }}
        {% endfor %}
        {{ arr | join(sep="     ||      ") }}
    {% endfor %}
{% endmacro input %}

1 ответ

Решение

Я понял. С помощьюconcat(with="")

{% macro generate_table(table) -%}

    {% for row in [0,1,2] -%}
        {% set_global row_val = [] -%}
        {% for cols in [0,1,2] -%}
            {% set_global row_val = row_val | concat(with= table.col_values[table.col_header[cols]][row]) -%}
        {% endfor -%}
        {{ row_val | join(sep=" ") }}
    {% endfor -%}
{% endmacro generate_table -%}
Другие вопросы по тегам