Как я могу обработать ключи хеша, содержащие недопустимые символы идентификатора в Template Toolkit?

В Template Toolkit, если у меня есть следующая переменная, содержащая hashref:

[% 
   artist = {
     'life-span' => '1975 to 1987',
   }
%]

Каков наилучший способ вывода данных в «срок службы»?

Я пытался...

[% artist.life-span %]

^ Это не из-за дефиса.

[% artist.'life-span' %]

^ Это не удается, потому что синтаксис неверен.

[% lifespan = 'life-span' %]
[% artist.$lifespan %]

^ Это работает, но нецелесообразно в большом приложении с большим количеством данных.

Есть ли способ лучше?

Проект, над которым я работаю, представляет собой веб-приложение на основе Catalyst, и данные поступают из различных внешних веб-сервисов, поэтому я не контролирую имя хеш-ключей. Я думаю, я мог бы предварительно обработать данные в Perl, переименовав проблемные ключи хеша перед передачей их в TT, но это выглядит довольно дерьмовым обходным путем.

Ответы на вопрос(1)

Ваш ответ на вопрос