Плагин 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>