Freemarkerでnull
値を処理する方法データにnull
値が存在する場合、テンプレートに例外が発生します。
??
テスト演算子を使用できます。
これにより、オブジェクトの属性がnullでないかどうかがチェックされます。
<#if object.attribute??></#if>
これにより、オブジェクトまたは属性がnullでないかどうかがチェックされます。
<#if (object.attribute)??></#if>
ソース: FreeMarker Manual
Freemarker 2.3.7以降では、 この構文 を使用できます。
${(object.attribute)!}
または、属性がnull
のときにデフォルトのテキストを表示する場合:
${(object.attribute)!"default text"}
私はそれが他の方法で働くと思う
<#if object.attribute??>
Do whatever you want....
</#if>
object.attribute
がNOT NULLの場合、コンテンツが印刷されます。
??
ステートメントの最後に<#if>
演算子を使用します。
この例は、Freemakerテンプレートの2つのリストのnull
値を処理する方法を示しています。
List of cars:
<#if cars??>
<#list cars as car>${car.owner};</#list>
</#if>
List of motocycles:
<#if motocycles??>
<#list motocycles as motocycle>${motocycle.owner};</#list>
</#if>