Proposer une liste de valeurs avec l'i18n de rails

Publié le 19 octobre 2011 par Martin Catty | back

Cet article est publié sous licence CC BY-NC-SA

Proposer plusieurs options dans un select avec l’i18n

Bien souvent dans une application vous avez besoin de proposer une liste de valeurs plus ou moins fixes parmi lesquelles l’utilisateur doit faire un choix, par exemple pour choisir sa civilité.

Plutôt que d’utiliser une constante pour stocker un hash clé / valeur des options, ou maintenir un système autre, j’utilise l’i18n de rails.

Cela offre une solution très souple, voyez plutôt:

# fr.yml
gender:
  miss: "Mademoiselle"
  mrs: "Madame"
  mr: "Monsieur"

# code avec formtastic
f.input :gender, :as => :select, :collection => I18n.t("gender").map(&:reverse)

J’ai parlé d’utiliser des valeurs fixes mais vous pouvez très bien ajouter progressivement des valeurs dans votre fichier d’i18n qui seront automatiquement disponibles dans vos vues.

C’est bien entendu encore plus avantageux quand vous travaillez sur une application multilingue.

L’équipe Synbioz.

Libres d’être ensemble.