2011-09-14 15 views
5

En grails, ¿hay alguna manera en el archivo i18n de hacer referencia a un valor constante? Estoy tratando de hacer algo como esto:Una buena forma de introducir una cadena constante al archivo de internacionalización i18n en grails

constant.sitename=Fancy SiteName 

intro.headline.label=Welcome to {constant.sitename} 
home.headline=You're at {constant.sitename} 

La razón es que no quiero cambiar el nombre del sitio en cada cuerda individual, si decidimos cambiar el nombre, sólo quiero hacerlo una vez. ¿Hay alguna forma de cumplir este requisito?

Me doy cuenta de que también podría establecer una constante en Config.groovy, pero eso requeriría pasar el parámetro en cada mensaje que lo requería, lo cual prefiero no tener que hacer ya que haría que los desarrolladores vive peor

Respuesta

2

Puede invalidar el mensaje estándar de Grails por una implementación personalizada en resources.groovy. Por defecto, el plugin Grails i18n usa PluginAwareResourceBundleMessageSource para esto.

Por lo tanto, la subclase e invalida el código necesario para agregar el reemplazo de la propiedad. No sé de memoria qué métodos exactos son estos, pero eso debería ser fácil de resolver con un depurador.

Cuestiones relacionadas