[RUBY] La route vers la japonaisisation des rails conçoit des messages d'erreur

Je suis un débutant en Rails. Cette fois, je voulais traduire le message d'erreur de la fonction de connexion de Rails en japonais, alors j'ai trébuché un peu, donc je vais faire une note.

supposition

installation de gemmes

devise Ajout d'un bijou pour le japonais

Gemfile


 gem 'devise-i18n'
 gem 'devise-i18n-views'
$ bundle install

Générer un fichier japonais pour la devise

$ rails g devise:views:locale ja
    create  config/locales/devise.views.ja.yml

Un fichier de message d'erreur japonais est généré

Obtenir le fichier japonais de l'appareil

Modifier config / application.rb

Ajout de config.i18n.default_locale =: ja Par défaut, l'anglais : en est défini, alors changez-le en japonais: ja.

config/application.rb


nom du référentiel du module
  class Application < Rails::Application
    # Initialize configuration defaults for originally generated Rails version.
    config.load_defaults 5.2
    #####

    config.i18n.default_locale = :ja

    #####
  end
end

Commencez par Rails s et essayez d'afficher l'instruction d'erreur

Capture d'écran 2020-05-26 17.37.50.png

Bien qu'il ait été traduit en japonais, certaines phrases anglaises sont ... Je n'ai pas semblé pouvoir obtenir une phrase japonaise qui correspond à l'erreur dans la devise

Ajouter une déclaration d'erreur

Modification de devise.views.ja.yml

Le message est enregistré dans le fichier devise.views.ja.yml ajouté par $ rails g devise: views: locale ja, alors éditez-le. ** Par défaut, il s'écrit comme suit **

ja:
  activerecord:
    attributes:
      user:
 current_password: "mot de passe actuel"
 email: "adresse e-mail"
 mot de passe: "mot de passe"
 password_confirmation: "mot de passe de confirmation"
 Remember_me: "se souvenir de la connexion"
    models:
 utilisateur: "utilisateur"

   .
   .
   .

En regardant la déclaration d'erreur dans le navigateur plus tôt,

Traduction de l'adresse e-mail manquante: ja.activerecord.errors.models.user.attributes.email.blank

Est une sortie, et ceci est édité en créant une hiérarchie avec un fichier yml.

ja:
  activerecord:
    attributes:
      user:
 current_password: "mot de passe actuel"
 email: "adresse e-mail"
 mot de passe: "mot de passe"
 password_confirmation: "mot de passe de confirmation"
 Remember_me: "se souvenir de la connexion"
    models:
 utilisateur: "utilisateur"

### d'ici
    errors:
      models:
        user:
          attributes:
            email:
 vide: "Veuillez entrer"
            password:
 vide: "Veuillez entrer"
            name:
 vide: "Veuillez entrer"
### Jusque là

Et modifiez-le pour afficher la déclaration d'erreur

Capture d'écran 2020-05-26 17.59.46.png

Je l'ai bien fait

En passant, j'ai défini ja.errors.messages.not_saved.one etc. pour vider ʻone:" "` et l'ai personnalisé en supprimant l'instruction de décompte des erreurs, etc.

Capture d'écran 2020-05-26 18.09.53.png

La localisation à peu près japonaise de la phrase d'erreur de périphérique est comme ceci

Cliquez ici pour les documents de référence [Rails 5] Japaneseize avec Devise-i18n Correspondant à "traduction manquante" après la localisation japonaise de Devise github devise-i18n

Recommended Posts

La route vers la japonaisisation des rails conçoit des messages d'erreur
[Rails] Comment afficher les messages d'erreur individuellement
[Rails] Comment émettre des messages de réussite et d'erreur
Localisation japonaise des messages d'erreur Rails [objets de conception / formulaire, etc.]
[Rails] Ajouter une colonne à concevoir
[rails] erreur lors de l'installation du périphérique
[Rails] Traitement après l'ajout d'une colonne à la table de devise
[Rails] Solution de contournement pour les classes générées automatiquement avec des messages d'erreur de conception
[Rails] Quel était le message d'erreur?
[Rails] Comment utiliser la "devise" des gemmes
[Rails] Localisation japonaise des messages d'erreur
[Rails] Comment utiliser les messages flash
[Rails] Erreur de validation inattendue dans l'appareil
[Rails] Afficher les messages d'erreur du formulaire de manière asynchrone
[Rails] Ajoutez des paramètres forts pour concevoir
La route de JavaScript à Java
[Rails 5] Comment afficher l'écran de changement de mot de passe lors de l'utilisation de l'appareil
Je souhaite éliminer les messages d'erreur en double
Comment désactiver le regroupement d'erreurs
La voie de la création de services Web (partie 2)
La route pour créer un jeu sonore 2
Java SE8 Silver ~ La route à franchir ~
[Rails] Comment utiliser la méthode de la carte
Tutoriel Rails Résolution de l'erreur de déploiement sur Heroku, alors notez la solution
Test des messages d'erreur: Notes du didacticiel Rails - Chapitre 7
[Rails] Comment obtenir les informations sur l'utilisateur actuellement connecté avec devise
[Rails] Utilisez le dispositif pour obtenir des informations sur l'utilisateur actuellement connecté
[Rails] concevoir
[Note] Comment utiliser Rails 6 Devise + cancancan
La route pour créer un jeu sonore 3
[Rails] Comment traduire la devise en japonais
La route pour créer un jeu sonore 1
Comment afficher les messages d'erreur en japonais
[Rails6] Comment connecter la fonction d'affichage générée par Scaffold avec la fonction utilisateur générée par devise
[Ruby on Rails] Comment japonaisiser le message d'erreur de l'objet Form (ActiveModel)
[Rails] Comment décider de la destination par "voies ferrées"
Comment trouver la cause de l'erreur Ruby
Bouton [Rails] pour revenir en haut de la page
[Rails] J'ai essayé de faire passer la version de Rails de 5.0 à 5.2
[Rails] Traduisons le message d'erreur en japonais
J'ai essayé d'organiser la session en Rails
Le message d'erreur du périphérique ne s'affiche pas correctement.
Code utilisé pour connecter Rails 3 à PostgreSQL 10
[Rails] Solution pour "Uglifier :: Erreur: caractère inattendu" ""
Erreur lors du déploiement de rails5 + Mysql sur heroku avec Docker-compose
[Rails] Ajouté dans le modèle: nom d'utilisateur non ajouté à la base de données
Unifier le fuseau horaire de l'application Rails à l'heure japonaise
Essayez de résumer la disposition commune avec des rails
Comment vérifier les commandes Rails dans le terminal
La voie de la création d'un service Web (partie 1)
[Ruby on Rails] Affichage individuel des messages d'erreur