Grails - получение сообщения оценивает от контроллера

Как я могу получить значение от свойств сообщения за пределами GSPs? Например, эквивалент

<g:message code="some.message"/>

но в контроллере?

29
задан armandino 11 May 2010 в 22:04
поделиться

2 ответа

Внутри контроллера или библиотеки тегов вы можете использовать следующее:

g.message(code: 'some.message')

Однако внутри классов или служб домена вам необходимо ввести messageSource и вызвать метод getMessage () из класса AbstractMessageSource Sping. Этот фрагмент показывает, как это сделать:

import org.springframework.context.i18n.LocaleContextHolder as LCH
...
class MyServiceOrMyDomain {
  def messageSource 
  ...
  messageSource.getMessage(code, msgArgs, defaultMsg, LCH.getLocale())
  ...
}
47
ответ дан 28 November 2019 в 01:26
поделиться

Вы также можете импортировать библиотеку тегов валидации и использовать ее для захвата источника сообщений.

import org.codehaus.groovy.grails.plugins.web.taglib.ValidationTagLib
def g = new ValidationTagLib()
g.message(error: error)
10
ответ дан 28 November 2019 в 01:26
поделиться
Другие вопросы по тегам:

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