как инвертировать анонимный список в шаблонном инструментарии?

Действительно ли возможно инвертировать анонимный список в шаблонном инструментарии?

например.

[% FOREACH month IN [1..12].reverse %]
    [% month %]
[% END %]

(за исключением того, что не работает).

Просто задался вопросом, был ли аккуратный способ сделать это, не используя переменные или явно выводя массив.

6
задан Jonathan Leffler 15 January 2010 в 16:39
поделиться

1 ответ

Извините, нет. Возможность создавать анонимные массивы in situ, это особый случай, обрабатываемый сингуртом TT. Вы не можете работать на них, как вы можете в регулярном Perl без промежуточного этапа присвоения к именованной переменной.

Редактировать: Вы не можете даже пройти в подпрограмме, чтобы попытаться использовать так:

[% FOREACH month IN my_reverse([1..12]) %]
    [% month %]
[% END %]

Также не сможете попробовать использовать метод на объекте:

[% FOREACH month IN testObj.my_reverse([1..12]) %]
    [% month %]
[% END %]

они будут компитенны, но в каждом случае FOREACH конструкция видит голову цепи, например Код ссылка в первом случае и благословенный объект во втором.

10
ответ дан 10 December 2019 в 00:38
поделиться
Другие вопросы по тегам:

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