1

这是我第一次使用 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>

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

谢谢

4

1 回答 1

0

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

例如,您可以通过使用 spring security 来了解当前用户。

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

于 2011-12-26T12:12:31.900 回答