Отображение полевых ошибок Grails

Делает кто-либо знает, как я мог добраться fieldError распечатать в примере ниже.

для каждого объекта с ошибкой я хотел бы распечатать пользовательские сообщения об ошибках, что я определил в messages.properties файле

в данный момент все это делает распечатать коды ошибок по умолчанию

item.errors?.allErrors?.each{ 
  println it.toString() 
}

Я видел другие примеры, где Вы можете поиск код ошибки для поля, например.

it.getFieldError('title').code

но я хотел бы преобразовать сообщение по умолчанию в свое новое сообщение об ошибке и печать это.

15
задан uladzimir 6 March 2014 в 07:55
поделиться

1 ответ

Вам нужен доступ к бобу messageSource, например, с помощью

def messageSource

в вашем контроллере или сервисе. Тогда вы сможете получить доступ к сообщениям с помощью

def locale = Locale.getDefault()
for (fieldErrors in bean.errors) {
   for (error in fieldErrors.allErrors) {
      String message = messageSource.getMessage(error, locale)
   }
}
21
ответ дан 1 December 2019 в 03:34
поделиться
Другие вопросы по тегам:

Похожие вопросы: