モデルに
validates :hoge, uniqueness: true
といったようにバリデーションを記述すると、フォームでそのバリデーションで引っかかった場合にエラーメッセージのflashを表示できるようになると思います。
このエラーメッセージを特定のフォームの処理で、hogeカラムのuniquenessのバリデーションについてオリジナルメッセージで表示したい場合、どのように実装するのがよいのでしょうか。
日本語化にはi18nの多言語化gemを使用していて、現状だと、
ja.yml
1errors: 2 messages: 3 taken: はすでに存在します 4... 5activerecord: 6 attributes: 7 user: 8 hoge: 'ホゲ'
といった設定をしており、重複した場合、
ホゲはすでに存在します
という表示がされます。
これを、たとえばこのホゲは既に他のユーザにて認証済みです
といったように変更したいです。
いろいろ考えてみたのですが、uniquenessのバリデーションで適用されるerrors.messages.takenを変更すると、ユニーク属性を持ったカラム全てに影響を与えてしまうので使えず…といった感じで悩んでいます。
よろしくお願いいたします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。