Freemarkerで文字列を数値に変換したい。数値の値に基づいて条件チェックを行いたいのですが。 ?numberが機能していないようです。
助言がありますか?
?numberは問題なく機能します。隠された番号を他の番号と比較することができませんでした。これは私にとってはうまくいきませんでした
<#assign num = numString?number>
<#if num > 100>
</#if>
私が括弧の中に入れたとき(num> 100)、それはうまくいきました。
<#if (num > 100)>
</#if>
比較が機能していなかったので、変換は行われていないと想定していました。私の悪い。
次のように使用できると思います:string?eval
コードでは閉じ括弧を使用しているので、freemarkerは評価しています
<#if num >
代わりに使用する必要があります
<#if num gt 100>
これについては、このドキュメントの最後にあるifステートメントについて説明します https://freemarker.Apache.org/docs/ref_directive_if.html
これが一部で機能し、他では機能しない理由は、括弧のせいです。括弧もドキュメントの下部で説明されています
以下のコードを使用してください
<#if num?string > 100?string>
</#if>
それは私のために働いた。