中断g:if / g:each

时间:2015-06-15 21:18:28

标签: html grails gsp

我在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? 有什么想法吗?

2 个答案:

答案 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>