grails - 从 gsp 到 Controller 方法的每个循环的等效项

标签 grails groovy gsp

假设当前处于普惠制中:

<g:each in="${prospectProjectStatuses}" var="statusObj">
    <%-- Number active and inactive projects --%>
    <g:if test="${statusObj?.project?.active == true}">
        <g:set var="numActiveProjects" value="${numActiveProjects + 1}"/>
    </g:if>
    <g:else>
        <g:set var="numInactiveProjects" value="${numInactiveProjects + 1}"/>
    </g:else>

    <%-- Number of hidden rows to show --%>
    <g:if test="${!statusObj?.project?.id.intValue() && !canEdit && statusObj?.status?.id}">
        <g:set var="numProjectsToShow" value="${numProjectsToShow + 1}"/>
    </g:if>

    <g:if test="${statusObj?.project?.active && statusObj?.status?.id}">
        <g:set var="numStatusSet" value="${numStatusSet + 1}"/>
    </g:if>
</g:each>

Controller 方法中的每个循环等效于什么?

最佳答案

对你的集合调用each()。因此,您的示例 gsp 的等效内容如下所示:

prospectProjectStatuses.each { statusObj -> 
    if (statusObj?.project?.active) {
        numActiveProjects += 1
    } else {
        numInactiveProjects += 1
    }
    if (statusObj?.project?.id.intValue() && !canEdit && statusObj?.status?.id) {
        numProjectsToShow += 1
    }
    if {statusObj?.project?.active && statusObj?.status?.id) {
        numStatusSet += 1
    }
}

关于grails - 从 gsp 到 Controller 方法的每个循环的等效项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15774637/

相关文章:

Jenkins 管道正则表达式不匹配任何东西

Grails RabbitMQ native 过滤发送给消费者的消息

unit-testing ->> 和 1* 在这个 groovy 语句中是什么意思?

Grails - 分隔字符串的多个复选框

jquery - 在 Assets 中使用jQuery-UI

java - gsp,来自数组字节的图像

grails - assetPath 返回不同的 URL

grails - 在Groovy中无法使用g:select填充选择选项标签

security - Grails/Groovy:与.war相比,运行应用程序的危害

java - NSDate 日期字符串转换为 java.util.date