Grails Controller Edit 返回 map ?

标签 grails grails-domain-class

当我为一个名为 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/

相关文章:

grails - 如何使用where子句获取子表中的记录数

grails - 数据库/数据集市最佳实践

grails - 如何有条件地跳过 Grails Spring Security 插件过滤器链中的 SecurityContextPersistenceFilter 过滤器

grails - Grails GSP格式问题

grails - 如何在Grails中编辑web.xml?

grails - 向Grails脚手架添加数组成员

grails - 约束错误…在生产和测试环境中的外键。开发人员运作良好。 - Cereal

grails - 在设计领域类 Grails 时需要一些想法

hibernate - Grails- hibernate 列读取器/写入器

hibernate - GORM 级联保存的顺序取决于字段名称?真的吗?