Ответ 1
Вы можете использовать item vmethod: [% artist.item('life-span') %]
.
В Template Toolkit, если у меня есть следующая переменная, содержащая hashref:
[%
artist = {
'life-span' => '1975 to 1987',
}
%]
Каков наилучший способ вывода данных в "продолжительность жизни"?
Я пробовал...
[% artist.life-span %]
^ Это не удается из-за дефиса.
[% artist.'life-span' %]
^ Это не удается, потому что синтаксис неверен.
[% lifespan = 'life-span' %]
[% artist.$lifespan %]
^ Это работает, но непрактично в большом приложении с большим количеством данных.
Есть ли лучший способ?
Проект, над которым я работаю, - это веб-приложение на основе Catalyst, и данные поступают из нескольких различных внешних веб-сервисов, поэтому я не контролирую имя хэш-ключей. Я предполагаю, что я мог предварительно обработать данные в Perl, переименовав хэш-ключи проблемы, прежде чем передавать его в TT, но это кажется довольно дрянной работой.
Вы можете использовать item vmethod: [% artist.item('life-span') %]
.