Плагин Grails Fields - Как заставить datePicker включать ограничения

Грааль 2.1
Плагин Fields 1.3

Я пытаюсь выяснить, как настроить рендеринг поля Dates таким образом, чтобы он включал ограничения (атрибуты), определенные в классе домена.

Основываясь на документации плагина Fields и другой информации, которую я нашел, я смогу сделать это через _input.gsp по умолчанию для дат.
Grails-приложение / просмотров /_fields/ дата /_input.gsp

В настоящее время ограничения не учитываются с помощью плагина Fields. Следующие результаты в поле даты с годами, начинающимися с 1912 по 2112: birthDate(атрибуты: ["precision": "day", "years": 2016..1970])

Результатом этого является поле даты для Года, Месяца и Дня, даже если точность была установлена ​​на месяц и снова, я получаю годы 1912-2112: expireDate(attribute: ["precision": "month", "years": 2007..2016])

Как настроить _input.gsp, чтобы использовать ограничения для datePicker?

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>
Другие вопросы по тегам