2010-10-20 7 views
0

Je suis nouveau à ROR. J'essaie d'ajouter des traductions à mon application. J'ai ajouté des traductions pour les contrôleurs.Ajout de traductions pour les modèles dans l'application Rails

  1. Où ajouter des traductions pour les modèles que je ne suis pas avoir tout/config/locales -> dossier modèles -> Fichier en.yml.

  2. Dans le modèle j'ai des lignes comme validates_presence_of: name,: message => "Le nom ne peut pas être vide!"

Si je veux ajouter des traductions pour le message "Le nom ne peut être vide", dirais-je directement comme

validates_presence_of: nom,: message => I18n.t (str_name_notblank)

S'il vous plaît donner des suggestions

Répondre

2

Pour ajouter des traductions à vos modèles vous avez juste besoin de les mettre sous activerecord->models et activerecord->attributes. Voici un exemple en polonais:

pl:  
    activerecord: 
    models: 
     patient: "Pacjent" 
    attributes: 
     patient: 
     first_name: "Imię" 
     last_name: "Nazwisko" 
     address: "Ulica" 
     postal_code: "Kod" 
     city: "Miejscowość" 

Notez que l'élément attributes est pas sous l'élément patient, mais comprend en fait encore. J'ai trouvé ça après un débogage et ça a fonctionné pour moi. Le Rails I18n guide a suggéré une structure différente, mais cela n'a pas fonctionné. La meilleure façon de traduire les messages standard Rails (comme ceux pour la validation) est de télécharger le fichier de traduction correct à partir du Rails Locale Data Repository (rails-18n) de Sven Fuchs et de le placer dans votre dossier config/locales (vous pouvez changer le nom). Ensuite, vous supprimez votre chaîne :message et utilisez simplement les messages standard, mais traduit à votre goût.

Questions connexes