nic*_*ick 16 perl catalyst template-toolkit
在Template Toolkit中,如果我有以下包含hashref的变量:
[%
artist = {
'life-span' => '1975 to 1987',
}
%]
Run Code Online (Sandbox Code Playgroud)
在"寿命"中输出数据的最佳方法是什么?
我试过了...
[% artist.life-span %]
Run Code Online (Sandbox Code Playgroud)
^因连字符而失败.
[% artist.'life-span' %]
Run Code Online (Sandbox Code Playgroud)
^这会失败,因为语法不正确.
[% lifespan = 'life-span' %]
[% artist.$lifespan %]
Run Code Online (Sandbox Code Playgroud)
^这有效,但在具有大量数据的大型应用程序中不切实际.
有没有更好的办法?
我正在研究的项目是基于Catalyst的Web应用程序,数据来自许多不同的外部Web服务,因此我不控制哈希键的名称.我想我可以预先处理Perl中的数据,在将它提供给TT之前重命名问题哈希键,但这似乎是一个非常糟糕的解决方法.