这是我使用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确定要回答的问题。