我创建了一个额外的列,并在列表末尾添加了图标,用于编辑和删除事件。
这就是我所拥有的
<g:form value="${it.id}">
<g:hiddenField name="id" value="${it.id}" />
<span class="simple"><g:actionSubmit class="editar" action="edit" value="${message(code: 'default.button.editar.label', default: ' ')}" /></span>
<span class="simple"><g:actionSubmit class="eliminar" action="delete" value="${message(code: 'default.button.eliminar.label', default: ' ')}" onclick="return confirm('${message(code: 'default.button.delete.confirm.message', default: 'Esta seguro que desea Eliminar?')}');" /></span>
</g:form>
我写了The ID is ${it.id}
并且它识别了它并给了我ID号,所以我不知道问题出在哪里。任何帮助将受到高度赞赏。感谢。
更新
所以我认为错误在于控制器中定义了编辑和删除
def edit = {
def entryInstance = Entry.get(params.id)
if (!entryInstance) {
flash.message = "${message(code: 'default.not.found.message', args: [message(code: 'entry.label', default: 'Proyecto/Ruta'), params.id])}"
redirect(action: "list")
}
else {
return [entryInstance: entryInstance]
}
}
我认为因为它在获取参数中说params.id我工作不对,我还有其他选择吗?
答案 0 :(得分:1)
<g:form id="${it.id}">
<span class="simple">
<g:actionSubmit class="editar" action="edit"
value="${message(code:'default.button.editar.label',
default: ' ')}" />
</span>
<span class="simple">
<g:actionSubmit class="eliminar" action="delete"
value="${message(code: 'default.button.eliminar.label',
default: ' ')}"
onclick="return confirm('${message(code: 'default.button.delete.confirm.message', default: 'Esta seguro que desea Eliminar?')}');" />
</span>
</g:form>
总结:使用id =“{it.id}”替换g:form标记中的value =“$ {it.id}”并删除hiddenField for ID。我认为这样可以解决问题。
如果它不起作用,请告诉我......