Я занимаюсь разработкой приложения с использованием инфраструктуры Grails, и у меня возникают проблемы с hasErrors при вызове в качестве метода из представления gsp.
У меня есть форма, которая заполняется значениями из базы данных (значения по умолчанию). Эти значения хранятся в объекте сеанса. Пользователи могут редактировать значения в полях формы и отправлять результаты обратно в базу данных. Перед сохранением данных у меня есть объект команды, который проверяет данные. При наличии ошибок объекты команды отображают вид с той же формой и подсвечиваются ошибки.
Я пытаюсь заполнить поля формы значениями, хранящимися в объекте сеанса, если нет ошибок в объекте команды. В этом случае поля должны быть заполнены неправильными значениями, введенными пользователем.
Вот фрагмент кода:
<g:textField name="somename" id="someid" value="${hasErrors(bean: commandobject, field: 'somename') ? fieldValue(bean: commandobject, field: 'somename') : session.somevalue}" />
Проблема с приведенным выше кодом заключается в том, что независимо от значения, введенного в поле, будь то правильное или неправильное, поле всегда заканчивается значением из объекта сеанса. Есть ли решение этого или я делаю что-то не так?