2010-02-12 105 views
4
[% IF OrgType.id == Organization.org_type_id %]selected="selected"[% END %] 

即使它們都評估爲相同的數字也不起作用。有沒有辦法比較Template Toolkit中的兩個變量?

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

(即,爲了測試目的而在數字中進行硬編碼)確實起作用。

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

都在頁面上打印「3」。

+0

從Perl方面來看,確保它們完全一樣。 – 2010-02-12 21:07:49

回答

10

對我來說,以下工作:

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

輸出 '嗒嗒'。所以我懷疑你的兩個變量不包含你認爲他們做的事。模板工具包對==字符串相等,所以,如果你這樣做:

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

這將打破。您可能需要對數據進行一點處理以使它們在字符串相等的情況下正常工作。

相關問題