【问题标题】:Grails Scaffolding Default DateGrails 脚手架默认日期
【发布时间】:2010-06-30 16:20:17
【问题描述】:

我正在使用 Grails 脚手架,并希望在创建期间更改默认日期。当前日期默认为今天的日期。如何将其默认为空白或无日期?
谢谢,
史蒂夫

【问题讨论】:

    标签: groovy grails


    【解决方案1】:

    可以grails install-templates自定义模板,用于渲染。

    $PROJECT/src/templates/scaffolding/renderEditor.template 中有一个方法renderDateEditor,应该根据您的需要进行定制。

    此自定义将应用于所有新的脚手架操作。

    【讨论】:

    • 改变 renderEditor.template - renderDateEditer 如下所示。注意“值=无”。感谢帮助! return ""
    【解决方案2】:

    无论您的域对象中的默认值是什么,都会在创建时显示在表单中。

    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)
        }
    }
    

    【讨论】:

    • 不知道为什么,但这对我不起作用。请参阅下文了解我必须做的事情。感谢您抽出宝贵时间回答。
    猜你喜欢
    • 2013-11-07
    • 1970-01-01
    • 2016-11-27
    • 2013-04-12
    • 2016-09-08
    • 2011-04-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多