J'essaie d'obtenir une localisation I18N travaillant sur un grave / groovy Enum, Toute astuce sur la façon dont je pourrais y parvenir? J'ai essayé de mettre le nom de classe complet, etc. dans une localisation, mais cela ne semble pas fonctionner p>
3 Réponses :
Une méthode est affichée dans Ce blog post par Rob Fletcher (à partir de 2009) P>
Assurez-vous que votre classe Enum puis implémentez Les méthodes qu'il définit p> implémente org.springframework.Context.messagesourcesolvable code> p>
Désolé pour le retard mais je pense que cela pourrait vous aider. J'avais exactement le même problème avec Enums et I18N. C'est la solution que j'ai trouvée:
Suivre votre énumé défini avant, dans votre message.Properties Fichiers placez une entrée pour chaque valeur de l'ENUM par exemple: P>
${message(code:'enum.value.'+fieldValue(bean: someDomainClass, field: "notification"))}
Vous méritez un +100 mais depuis que je ne pouvais pas le faire, j'ai fait +1! Merci.
Vous devez implémenter et définir vos messages dans i18n: p> La balise SELECT doit ressembler à ceci: P> MessagesSourcesolvable code> pour fournir vos codes:
<g:select name="type" from='${Notification.values()}' optionKey="id"/>