这是我使用Grails进行的第一个开发。我有创建问卷的要求。这是我的GSP页面,其中列出了问题,列出了每个问题的可能答案,并根据答案的类型显示了复选框或单选按钮。

<div class="body">
        <h1><g:message code="default.edit.label" args="[entityName]" /></h1>
        <g:if test="${message}">
        <div class="message">${message}</div>
        </g:if>
            <g:form  action="createDonation" >
            <div class="dialog">
                <table>
                    <tbody>
                     <g:each in="${questionList}" status="i" var="questionInstance">
                     <tr>
                      <td>${fieldValue(bean: questionInstance, field: "text")}</td>
                      </tr>
                      <tr>
                        <g:each in="${questionInstance?.answers?}" status="j" var="a">
                             <td >
                             <g:if test="${fieldValue(bean: a, field: 'ansType.name') == 'Multiple'}"><g:checkBox name="myGroup" value="${false}" /></g:if>
                             <g:if test="${fieldValue(bean: a, field: 'ansType.name') == 'Single'}"><g:radio name="myGroup" value="1"/></g:if>
                             </td>
                            <td >${fieldValue(bean: a, field: "text")}</td>
                        </g:each>
                      </tr>
                    </g:each>


                    </tbody>
                </table>
            </div>
             <div class="buttons">
                  <span class="button"><g:submitButton name="return" class="save" value="${message(code: 'default.button.backtodonorlogin.label', default: 'Back')}" /></span>
                <span class="button"><g:submitButton name="submit" class="save" value="${message(code: 'default.button.saveandcontinue.label', default: 'Create')}" /></span>
            </div>
        </g:form>

    </div>
</body>

现在我想保存用户的响应,即每个用户为每个问题选择的答案是什么。对于多选,可以选择多个答案。我很难弄清楚如何为此创建模型。
需要帮助。

谢谢

最佳答案

怎么样:您创建具有以下属性的QuestionResponse实体:
问题(链接到正在回答的问题)
响应(用户给出的答案)
响应者(响应用户)

例如,您可以使用spring security查找有关当前用户的信息。

您可以从表单中的隐藏ID确定要回答的问题。

10-06 01:22