Actuellement en train de construire une application Rails 3 et j'ai remarqué qu'il y a beaucoup de mots et de phrases que j'utilise dans de nombreuses vues différentes plusieurs fois. Plutôt que de les coder en dur dans les vues à chaque fois, j'ai pensé que ce serait une bonne idée d'avoir le contenu stocké dans un hash de CONSTANTES. Est-ce que ça aurait du sens de faire un fichier constants.rb dans config/initializers et d'avoir ensuite un hash appelé CONSTANTES, puis chaque fois que j'ai besoin du contenu pour une vue, je appellerais simplement le hash CONSTANTES avec une clé respective? Est-ce une bonne façon de faire, ou devrais-je faire autre chose?
Réponse
Trop de publicités?Il semble que les fichiers de paramètre d'emplacement de Rails pourraient être ce que vous recherchez. Vous définiriez vos chaînes dans le fichier config/locales/en.yml
(pour l'anglais). Vous définissez vos chaînes dans un fichier yaml, puis les utilisez via t(:my_string)
dans vos vues. Cela facilite la maintenance ou l'extension à une autre langue.
Consultez le Guide i18n de Rails, il explique les choses en détail.