2014-09-03 51 views
1

我有对象,并希望检查某个属性是否存在。是否有更优雅的方式来检查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

是的,(some.videos.files)?has_content。相同的逻辑也可以与??!一起使用,如(some.videos.files)??(some.videos.files)![]

相关问题