有没有更优雅的方法来检查freemarker中的变量?

时间:2014-09-03 09:42:12

标签: freemarker

我有对象并想检查某个属性是否存在。

我有嵌套的地图和列表,如下所示:

some.videos.files(地图包括包含列表的地图)

some始终存在但可能为空。

如果我这样做:

<#if some.videos.files?has_content>

some.videos不存在我收到错误。

所以我现在就这样做:

<#if some.videos?has_content && some.videos.files?has_content>

有更优雅的方法吗?

我知道我能做到

<#if some.videos?? && some.videos.files?has_content>

但我不认为这会好得多,特别是如果你有更深层次的嵌套变量。

基本上我只想知道some.videos.files是否存在且不为空。

1 个答案:

答案 0 :(得分:2)

是的,(some.videos.files)?has_content。同样的逻辑也适用于??!,例如(some.videos.files)??(some.videos.files)![]