如何将用户选择的值从radioGroup传递给动作?

时间:2012-01-18 04:14:19

标签: grails groovy

我有一个这样的单选按钮组:

<g:radioGroup name="myGroup" values="[1,2,3]" value="1" >
<p><g:message code="${it.label}" />: ${it.radio}</p>
</g:radioGroup>

让我们在视图中将其命名为questions。用户将从中选择任何答案,然后他将单击名为calculate的按钮。这会将他重定向到另一个名为calculate的动作。现在,在此操作中,我如何从questions页面获得用户选择的答案?

实际上我在questions查看页面上会有70多个问题。我该如何管理?有什么建议吗?

提前致谢。

1 个答案:

答案 0 :(得分:1)

匹配您的示例答案将在myGroup参数中:

def calculate() {
  def answer = params.myGroup
}

我建议将myGroup重命名为更有意义的名称,例如“问题”加上其索引,例如question1question2等,以区分广播组的问题。这使您可以迭代所有请求参数并相应地分配答案:

def calculate() {
  def questions = ... //list of questions rendered previously
  questions.eachWithIndex { question, i ->
    question.answer = params["question$i"]
  }
}

当然,问答分配块取决于您的特定逻辑/数据模型。