gpt4 book ai didi

grails - Webflow:是否可以在流之间切换?

转载 作者:行者123 更新时间:2023-12-02 14:53:35 25 4
gpt4 key购买 nike

我有两个 Controller ,每个 Controller 都有一个流程。在我的菜单中,有一个指向流程的链接。如果我在流#1中并单击流#2的链接,Grails将向我展示流#1的 View 。

我发现实现此过渡的唯一方法是链接到重定向到流程的操作。

class FirstController {
def firstFlow = {
}

def toFirst() {
redirect action: 'first'
}

}

class SecondController {
def secondFlow = {
}
def toSecond() {
redirect action: 'second'
}
}
  • 转到/first/first可以正确显示 View 。
  • 转到/second/second将显示的 View ,第一个是
  • 转到/second/toSecond重定向并正确显示 View 。
  • 返回/first/first,显示第二个
  • 的 View
  • 转到/first/toFisrt可以正确显示 View 。

  • 这是预期的行为吗?为什么流程没有正确显示?

    编辑

    菜单是使用 Platform Core Navigation API创建的。
    navigation = {
    app {
    first(controller: 'first', action: 'first', title: 'nav.exportar')
    second(controller: 'second', action: 'second', title: 'nav.importar')
    }
    }

    链接
    http://localhost:8080/my-application/first/first?execution=e14s1
    http://localhost:8080/my-application/second/second?execution=e14s1

    最佳答案

    如果要停止流程(例如单击菜单),则需要告诉webflow end-state

    因此菜单链接网址应包含eventId参数,即end-state

    我不知道导航API,但是下面的g:link示例:

    <g:if test="${params.action=='first'}"><%-- we are in first flow. --%>
    <g:link event="toSecond">Go to second</g:link>
    </g:if>
    <g:else><%-- we are not in first flow, normal link. --%>
    <g:link controller="second" action="second">Go to second</g:link>
    </g:else>

    和第一个 Controller :
    class FirstController {
    def firstFlow = {
    // view-state
    firstViewState {
    on('next').to 'nextAction'
    on('toSecond').to 'toSecond' // <g:link event='toSecond'> in gsp
    }

    // end-state
    toSecond() {
    redirect (controller:'second', action:'second')
    }
    }

    def toFirst() {
    redirect action: 'first'
    }
    }

    关于grails - Webflow:是否可以在流之间切换?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16154564/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com