以下是我在land.gsp页面中的代码。
<table style="padding: 10 ">
<thead>
<tr style="color: blue">
<td>Gname</td>
<td>Gowner</td>
<td>Device number</td>
<td>Edit </td>
<td>Delete </td>
</tr>
</thead>
<tbody>
<g:each in="${Groups.list()}" status="i" var="groupsInstance">
<g:set var="myid" value="${groupsInstance.id}"></g:set>
<tr class="${(i % 2) == 0 ? 'even' : 'odd'}">
<td>${fieldValue(bean: groupsInstance, field: "gname")}</td>
<td>${fieldValue(bean: groupsInstance, field: "gowner")}</td>
<td>${fieldValue(bean: groupsInstance, field: "devicenum")}</td>
<td><g:link action="edit" id="${groupsInstance.id}">Edit</g:link></td>
<td><g:link action="deleteme" id="${groupsInstance.id}">Delete</g:link></td>
</tr>
</g:each>
</tbody>
</table>
但是当我点击编辑时页面的布局不起作用(javascript,图像,样式)。但是id正确地传递给edit.gsp页面。当我改变
<td><g:link action="edit" id="${groupsInstance.id}">Edit</g:link></td>
到
<td><g:link action="edit" >Edit</g:link></td>
没有传递id并单击编辑将为页面提供正确的布局。以下是我的编辑操作
def edit(Long id) {
def groupsInstance = Groups.get(id)
if (!groupsInstance) {
flash.message = message(code: 'default.not.found.message', args: [message(code: 'groups.label', default: 'Groups'), id])
redirect(action: "list")
return
}
[groupsInstance: groupsInstance]
}
我哪里出错了?我想通过所有正确的布局将id传递给编辑页面。
答案 0 :(得分:2)
尝试在浏览器中查看源html,这可能会为您提供错误的线索。
答案 1 :(得分:1)
根据您的偏好尝试采用以下选项:
<g:link action="/conference/participated" id="${it.conference.id}"
params="[foo: 'bar', bar: 'foo']">My Link!</g:link>
我在你的代码中看到
时def groupsInstance = Groups.get(id)
if (!groupsInstance) {
flash.message = message(code: 'default.not.found.message', args: [message(code: 'groups.label', default: 'Groups'), id])
redirect(action: "list")
return
您已将其重定向到列表页面,确定列表页面具有不同的布局设置,这是更改,请检查并告知我们!
答案 2 :(得分:0)
从查看您的编辑操作看起来如果没有提供ID,那么您重定向到列表操作,并且您说布局很好。如果指定了id(并且它是有效的),则表示您正在呈现编辑视图。我希望您的edit.gsp中存在问题,目前您的说明中未显示该问题。