[% 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”。
[% 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”。
以下对我有用:
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 " } );
它会破裂。您可能需要稍微修改数据以使它们在字符串相等的情况下正常工作。