2016-07-22 10 views
0

私は、データベースクエリからデータを取り込むドロップダウンメニューを持つページに取り組んでいます。入力パラメータがある場合は、ドロップダウンのオプションの1つに一致します。そのパラメータに値が設定されている場合は、ドローダウンのオプションを選択します。私の本能は(fooFOREACH内のエントリがある場合)は、次のような何かをすることです:Dancer2テンプレート内のIFステートメント

<% IF param -eq foo %> 
    <option value="foo" selected="selected">foo</option> 
<% ELSE %> 
    <option value="foo">foo</option> 
<% END %> 

問題は、私はfooが認識できないトークンであることをエラーが出るということです。

上記のparam -eq foo構造を実際に使用できる証拠は、ドキュメントや例では見つかりません。私が見つけることができるIFステートメントの例では、比較演算子を使用していません。基本的には、ブール値のパラメータを読み取るか、またはパラメータに値があることを確認するだけです。しかし、それは-eqトークンを拒否しないので、私はそれを行う方法があり、正しい構文を見つけていないか、まだドキュメントを見つけていないという希望を抱いています。それはそれは==だ、-eqではありませんhttp://template-toolkit.org/docs/manual/Directives.html#section_IF_UNLESS_ELSIF_ELSE

+0

あなたはどのテンプレートエンジンを使用していますか? – melpomene

+0

Template Toolkit – tmoore82

答えて

1

は、関連文書を発見しました。しかし、その場合には、私はまだ-eqがエラーをスローしなかった理由はまだ分かりません。

+1

私は 'IF" param "MINUS" eq "foo'として解析されているので、' foo'が見つかった比較演算子を期待していました。 – RET

関連する問題