使用GORM设置域类属性值

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用GORM设置域类属性值相关的知识,希望对你有一定的参考价值。

用户在我的Grails应用程序中创建记录后,它会获取该信息并填充并显示图形。然后,用户可以单击该页面上的按钮并重定向到创建页面。当发生这种情况时,我希望输入的先前数据显示为这些字段的默认值。

在我的控制器中,我们现在实例化域类。

def create() {
    [apiInstance: new Api(params)]
}

假设Api类包含两个属性,一个名为name的字符串和一个名为myValue的整数。

我需要做什么才能在数据库中显示namemyValue的最新值作为创建页面中字段的新默认值?

答案

听起来你只想显示每个字段的值?

<g:textField name="name" value="${apiInstance.name}" />
<g:textField name="myValue" value="${apiInstance.myValue}" />

如果要在默认情况下显示上次创建的Api,则必须在控制器中获取该值。您可以使用last()获取最后创建的域类实例。

def create() {
    [apiInstance: Api.last() ?: new Api(params)]
}

以上是关于使用GORM设置域类属性值的主要内容,如果未能解决你的问题,请参考以下文章

GORM 无法实现插件中的域类是 GORM 类

类权限不是域类或 GORM 未正确初始化或已关闭

如何在 Grails 域类中正确设置属性值

Grails,Field 的域类默认值

定义所有域类的默认 id 类型

二级缓存如何与 getAll 一起使用并进入 gorm?