【发布时间】:2010-06-30 16:20:17
【问题描述】:
我正在使用 Grails 脚手架,并希望在创建期间更改默认日期。当前日期默认为今天的日期。如何将其默认为空白或无日期?
谢谢,
史蒂夫
【问题讨论】:
我正在使用 Grails 脚手架,并希望在创建期间更改默认日期。当前日期默认为今天的日期。如何将其默认为空白或无日期?
谢谢,
史蒂夫
【问题讨论】:
可以grails install-templates自定义模板,用于渲染。
在$PROJECT/src/templates/scaffolding/renderEditor.template 中有一个方法renderDateEditor,应该根据您的需要进行定制。
此自定义将应用于所有新的脚手架操作。
【讨论】:
无论您的域对象中的默认值是什么,都会在创建时显示在表单中。
class Test {
Date aDate
}
在该示例中,域对象具有不可为空的日期,因此默认值是新构造的日期。如果域对象更改为:
class Test {
Date aDate
static constraints = {
aDate(nullable:true)
}
}
那么日期的默认值为 null,这将显示在脚手架创建表单中。
如果要显式设置默认值,只需为其分配域对象初始化器即可:
class Test {
Date aDate = Date.parse("yyyy-MM-dd", "2010-01-01")
static constraints = {
aDate(nullable:true)
}
}
【讨论】: