当我为一个名为 User
的域类生成 Controller 时我得到了编辑操作的代码:
def edit(Long id) {
def userInstance = User.get(id)
if (!userInstance) {
flash.message = message(code: 'default.not.found.message', args: [message(code: 'user.label', default: 'User'), id])
redirect(action: "list")
return
}
[userInstance: userInstance]
}
谁能解释一下为什么返回
[userInstance: userInstance]
,而只是感谢userInstance
谢谢!
最佳答案
Controller 返回一个包含您将(可能)在 View 中使用的数据的 map 。映射键是您从 View 中用于此数据的名称。如果您重命名 map 键,例如
def edit(Long id) {
def userInstance = User.get(id)
if (!userInstance) {
flash.message = message(code: 'default.not.found.message', args: [message(code: 'user.label', default: 'User'), id])
redirect(action: "list")
return
}
[user: userInstance]
}
获取
User
的 id在您看来,您将使用:${user.id}
关于Grails Controller Edit 返回 map ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20668732/