Я заметил, что средство выбора даты сбрасывается до значения по умолчанию после выполнения запроса и перезагрузки страницы.
Хотя я позаботился о том, чтобы параметры сохранялись для использования в нумерации страниц
...
<g:paginate total = "${totalCount}" id = "${params.id}"
params = "[
startDate : params.startDate,
startDate_year : params.startDate_year,
startDate_month: params.startDate_month,
startDate_day : params.startDate_day]
/>
...
и он работает как положено, сам компонент пользовательского интерфейса показывает значение по умолчанию. Боюсь, что это может раздражать пользователей. Что нужно сделать, чтобы средство выбора даты отображало последнее значение, установленное пользователем, а не значение по умолчанию?





Ваш тег <g:paginate> использует параметры надлежащим образом, но ваш тег <g:datePicker>, скорее всего, не использует атрибут value, установленный для того, что было отправлено.
Я пробовал со значением = '${params.startDate}', но это вызвало исключение. Я не помню подробностей, так как у меня нет доступа к ПК в данный момент. Но я помню, что была проблема с конвертацией. Похоже, фреймворк пытался преобразовать строку типа params.startDate в дату. Подробности могу сообщить завтра.
Звучит отлично. Вероятно, он пытался преобразовать его в дату; вы всегда можете использовать java.text.DateFormat для этого, если вам нужно.
Я исправил проблему. Ваш ответ указал мне правильное направление, но я не думаю, что он достаточно подробен, особенно для таких, как я, которые используют Grails уже 2 дня. Я могу либо опубликовать код в комментарии, и вы добавите его в свой ответ, либо я создам новый ответ.
Я рад, что вы смогли решить проблему. Без примера вашего кода datePicker я не чувствовал, что могу добавить больше деталей, но вы можете либо отредактировать мой ответ, либо опубликовать свой собственный; то, что вы считаете наиболее подходящим! Удачи в дальнейшем развитии Grails!
Я бы подумал, что параметры в разбивке на страницы будут отправлены только в том случае, если будут нажаты ссылки на страницы, если вы, пользователь, выполняете действие каким-либо другим способом, они не будут отправлены.