5
[% IF OrgType.id == Organization.org_type_id %]selected="selected"[% END %] 

即使它们都评估为相同的数字也不起作用。

[% IF OrgType.id == 3 %]selected="selected"[% END %] 

(即为了测试目的在数字中硬编码)确实有效。

[% OrgType.id %] and [% Organization.org_type_id %] 

都在页面上打印“3”。

4

1 回答 1

10

以下对我有用:

 my $tt = Template->new; 
 $tt->process( \"[% IF foo == bar %]blah[% END %]", { foo => 42, bar => 42 } );

输出'blah'。所以我怀疑你的两个变量不包含你认为他们做的事情。模板工具包对 使用字符串相等==,所以如果你这样做:

 my $tt = Template->new; 
 $tt->process( \"[% IF foo == bar %]blah[% END %]", { foo => 42, bar => "42 " } );

它会破裂。您可能需要稍微修改数据以使它们在字符串相等的情况下正常工作。

于 2010-02-12T03:10:39.437 回答