Perl 如何在dancer中显示阵列项目?

Perl 如何在dancer中显示阵列项目?,perl,dancer,Perl,Dancer,我尝试在dancer中显示一个数组项,代码如下: get '/' => sub { my @rows = ('aaa','bbb','ccc'); template 'crud.tt', {'rows' => \@rows}; }; 模板为: <h2><% $rows[1] %></h2> <h2><% rows[1] %></h2> <% FOREACH r IN rows %>

我尝试在dancer中显示一个数组项,代码如下:

get '/' => sub {
  my @rows = ('aaa','bbb','ccc');
  template 'crud.tt', {'rows' => \@rows};
};
模板为:

  <h2><% $rows[1] %></h2>
  <h2><% rows[1] %></h2>
  <% FOREACH r IN rows %>
    <p><% r %></p>
  <% END %>


在h2元素中,什么是正确的方法?

如果使用默认的
Dancer
模板引擎,则只能传递一个简单的标量值。但是如果您启用
Template::Toolkit
作为引擎,那么各种事情都是可能的

您可以通过在YAML配置文件中设置
template:template\u toolkit
全局执行此操作,也可以通过编写

get '/' => sub {
  my @rows = ('aaa','bbb','ccc');
  set template => 'template_toolkit';
  template 'crud.tt', { rows => \@rows };
};
您的模板将如下所示

<h2><% rows.1 %></h2>
<% FOREACH r IN rows %>
<p><% r %></p>
<% END %>
在使用任一方法之前加载
Template::Toolkit
模块

use Template;