gpt4 book ai didi

grails - grails如何为日期设置默认值

转载 作者:行者123 更新时间:2023-12-02 15:00:47 24 4
gpt4 key购买 nike

如果我们有一个域对象,例如销售交易,我们希望现在开始销售。理想情况下,调用代码甚至应该不能设置该属性,但这大概是不可能的。

如果我们考虑以下对象:

class salesTransaction{
String description
Item item
Date soldAt

static constraintes = {
description blank: false
item blank: false
soldAt blank: false, defaultValue: new Date()
}

看起来应该可以使用,但是save()总是失败,并且属性soldAt不能为空。

如果我使用Java来做这个bean,我将只公开一个构造函数,该构造函数仅接受必需的参数,对可选对象使用setter,而对soldAt不使用setter。我认为没有办法用grails模拟它。

无论如何,anyohne知道如何做默认参数吗?

最好的解决方案是在数据库中执行此操作,即在db中将默认值设置为“now()”,但这无法通过grails约束进行指定。

人们如何去实现这种事情?

最佳答案

如果只希望日期代表最初将SalesTransaction保存到数据库的时间,则可以声明一个属性,例如Date dateCreated,然后让框架管理其值。有关更多信息,请参见http://grails.org/doc/latest/guide/GORM.html#eventsAutoTimestamping

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

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