#手順
deviseを入れた後、
ログイン時やログアウト時に出てくる文字を日本語にしたい。あとフォームに入力したエラーメッセージとか。
##gemのインストール
gem 'devise-i18n'
gem 'devise-i18n-views'
$bundle install
###読み込む用の日本語対応のymlファイルを作成
$rails g devise:views:locale ja
##日本語で反映されるようにconfig/application.rbに追記
config/application.rbファイル内の
class Applicationの中に
config.i18n.default_locale = :ja
を記入。
これで一旦完成です。
###自分用にymlファイルを修正する
空欄で入力した時に表示される、
「○○ cant be blank」
の部分を日本語にしたい。
階層を作って、修正する。
###修正前
ja:
activerecord:
attributes:
user:
current_password: "現在のパスワード"
email: "メールアドレス"
password: "パスワード"
password_confirmation: "確認用パスワード"
remember_me: "ログインを記憶"
models:
user: "ユーザ"
devise:
confirmations:
new:
resend_confirmation_instructions: "アカウント確認メール再送"
以下省略
###修正後
ja:
activerecord:
errors:
models:
user:
attributes:
email:
blank: "が入力されていません。"
password:
blank: "が入力されていません。"
message: ←これは自分で作ったmodel
attributes:
title: ←自分で作ったカラム名
blank: "が入力されていません。"
content: ←自分で作ったカラム名
blank: "が入力されていません。"
attributes:
user:
current_password: "現在のパスワード"
email: "メールアドレス"
password: "パスワード"
password_confirmation: "確認用パスワード"
remember_me: "ログインを記憶"
models:
user: "ユーザ"
devise:
confirmations:
new:
resend_confirmation_instructions: "アカウント確認メール再送"
以下省略
カラム名の日本語化は別途で
config/locales/models.ja.yml
を作成
ja:
activerecord:
attributes:
post: #これがmodel
question_title: 質問
answer: 回答
参考:
https://qiita.com/shizuma/items/a52fd0ef5b60d61fa330
http://31webcreation.hatenablog.com/entry/translate-devise-to-japanese