我在gsp中有这样的循环:
<g:each in="${personInstance.followed}" var="c" >
<g:if test="${c.equals(person)}">
<g:link id="${person.id}" action="unfollow" controller="message">unfollow</g:link>
</g:if>
</g:each>
我如何在g中使用break:each或g:if? 有什么想法吗?
答案 0 :(得分:0)
听起来好像是要根据实例是否在集合中显示一件事。您最好的选择是在集合上使用contains
。例如:
<g:if test="${personInstance.followed.contains(person)}">
Display your unfollow stuff here ...
</g:if>
<g:else>
Display your follow stuff here ...
</g:else>
答案 1 :(得分:0)
通常在Groovy和GSP中,您不需要break
,而您真正想要的是使用findAll
标记过滤条件,以便您的逻辑成为(未经测试的示例代码):
<g:findAll in="${personInstance.followed}" expr="c.equals(person)" var="c" >
<g:link id="${person.id}" action="unfollow" controller="message">unfollow</g:link>
</g:findAll>