Grails Fields插件 - 如何让datePicker包含约束

时间:2012-11-14 17:42:21

标签: grails datepicker grails-plugin grails-2.1

Grails 2.1
Fields插件1.3

我正在试图弄清楚如何自定义日期的字段呈现,以便包含域类中定义的约束(属性)。

根据我发现的Fields plugin documentation和其他信息,我应该可以通过默认的_input.gsp为日期执行此操作。
的grails-app /视图/ _fields /日期/ _input.gsp

目前,Fields插件没有考虑约束。 以下结果是日期字段,其中年份从1912年到2112年开始: birthDate(属性:[“precision”:“day”,“years”:2016..1970])

这个导致年,月和日的日期字段,即使精度已设置为月份,我得到1912-2112年: expireDate(属性:[“precision”:“month”,“years”:2007..2016])

如何设置_input.gsp以使用datePicker的约束?

1 个答案:

答案 0 :(得分:1)

我能够找到解决方案,它可能不是最好的解决方案,但它适用于我的应用。

使用grails-app/views/_fields/date/_input.gsp

<%@ page defaultCodec="html" %>

<g:if test="${constraints.nullable == true}">
    <g:datePicker name="${property}" value="${value}" precision="${constraints.attributes.precision}" years="${constraints.attributes.years}" default="none" noSelection="['': '']" />
</g:if>
<g:else>
<g:datePicker name="${property}" value="${value}" precision="${constraints.attributes.precision}" years="${constraints.attributes.years}"/>
</g:else>