1

我开始使用 Grails web flow 来实现一个向导。

checkStep {

        action {
            User user = springSecurityService.currentUser
            if (springSecurityService.loggedIn){
                def next = wizardService.getNextFlowStep(user)
                switch (next) {
                       case step1: 
                              step1()
                              break
    ...
                 }
         }
         on("step1").to "wizard_step1"
  } // checkStep
 wizard_step1() {
  ...
 }

我想以更优雅的方式编写第一步,以便根据“wizardService”确定下一步。我还希望这些步骤将在运行时确定,以便实际的步骤名称和顺序可以驻留在数据库中。

谢谢

4

1 回答 1

0

您想将 groovy 的动态方法调用用于类似的事情。我不确定这是否真的会在 webflow 内部工作,但它应该看起来像这样......

        def next = wizardService.getNextFlowStep(user); // returns 'step1';
        "${next}"(); // you may have to use 'this."${next}"();'
于 2012-06-26T09:57:56.207 回答