2016-02-27 1 views
1

J'ai un fichier appelé « show.json.jbuilder » avec le contenu:rails 4 traduire json dans le template jbuilder?

json.extract! @person, :id, :first_name, :last_name, :title, :birthday, :gender, :created_at, :updated_at 

Dans la vue, je peux simplement le traduire en utilisant le framework i18n des rails, mais cela ne semble pas travailler dans mon dossier de JBuilder . Spécialement le: le genre devrait être traduit.

Comment est-ce que je peux faire ceci?

Merci, Martin

+0

Comment le traduisez-vous si spécifiquement? –

+0

dans html.erb Je fais <% = t "activerecord.attributes.person.genders." + @ person.gender%> – Martin

+0

Je mets la traduction dans le modèle maintenant, mais je pense que ce ne sera pas la méthode recommandée dans RoR. – Martin

Répondre

3

Votre fichier show.json.jbuilder est un fichier de vue - un fichier de vue qui rend JSON plutôt que HTML. Ce qui est une bonne nouvelle! Vous avez accès aux aides de traduction standard. Dans ce cas, vous aurez besoin de quelque chose comme ceci:

json.id @person.id 
json.first_name @person.first_name 
json.last_name @person.last_name 
json.title @person.title 
json.birthday @person.birthday 
json.gender t(@person.gender) # Passing the gender field into the t() translation helper 
json.created_at @person.created_at 
json.updated_at @person.updated_at 
+0

Merci c'est ce que je voulais faire, merci beaucoup – Martin

+0

C'est gentil, merci :) – matiss