Grails:编辑和删除链接不起作用

时间:2010-06-25 16:04:15

标签: grails groovy filter

我创建了一个额外的列,并在列表末尾添加了图标,用于编辑和删除事件。

这就是我所拥有的

<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: '&nbsp;&nbsp;&nbsp;')}" /></span>
                            <span class="simple"><g:actionSubmit class="eliminar" action="delete" value="${message(code: 'default.button.eliminar.label', default: '&nbsp;&nbsp;&nbsp;')}" 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我工作不对,我还有其他选择吗?

1 个答案:

答案 0 :(得分:1)

<g:form id="${it.id}"> 
   <span class="simple">
     <g:actionSubmit class="editar" action="edit" 
                     value="${message(code:'default.button.editar.label', 
                                      default: '&nbsp;&nbsp;&nbsp;')}" />
   </span>
   <span class="simple">
     <g:actionSubmit class="eliminar" action="delete" 
                     value="${message(code: 'default.button.eliminar.label', 
                                      default: '&nbsp;&nbsp;&nbsp;')}" 
                     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。我认为这样可以解决问题。

如果它不起作用,请告诉我......