gpt4 book ai didi

grails - 如何在 grails 域类中设置默认值

转载 作者:行者123 更新时间:2023-12-03 06:49:14 25 4
gpt4 key购买 nike

有什么方法可以为域类属性设置默认值吗?我有一个名为 PayMethod 的类,我希望其中的 name 属性默认为 "Cash" 并且在创建此类时我希望使用此默认值表,这可以使用约束吗?

package abc

import util.UserUtil
import embed.AuditUser

class PayMethod {

String name = "Cash"

AuditUser audit = new AuditUser()
static embedded = ['audit']

static constraints = {
name blank: false, size: 5..30, unique: true
}

static mapping = {
table 't01i0010'
id column: 'F_ID', precision: 4, scale: 0
name column: 'F_NAME', length: 30, defaultValue: 'Cash'
version column: 'F_REVISION'
}

def authUserService
int insertIndex = 0
int updateIndex = 0
static transients = ['authUserService', 'insertIndex', 'updateIndex']

def beforeInsert = {
audit.entryUser = UserUtil.user()
audit.entryDate = new Date();
}

def beforeUpdate = {
audit.reviseUser = UserUtil.user()
audit.reviseDate = new Date();
}

def afterInsert = {
if(insertIndex == 0){
def user = audit.entryUser
def date = audit.entryDate
log.info "POST INSERT => ENTERER: ${user} ENTERED: ${date}"
}
insertIndex++
}

def afterUpdate = {
if(updateIndex == 0){
def user = audit.reviseUser
def date = audit.reviseDate
log.info "POST UPDATE => REVISE: ${user} REVISED: ${date}"
}
updateIndex++
}
}

最佳答案

这将在本周或下周发布的 2.2 中实现。请参阅http://jira.grails.org/browse/GRAILS-5520对于相关的功能请求。语法将是

static mapping = {
name defaultValue: "'Cash'"
}

现在您需要执行您正在执行的操作 - 将值设置为字段的默认值。您可以手动更新数据库架构,或将这项工作作为迁移的一部分来完成。

关于grails - 如何在 grails 域类中设置默认值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13577459/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com