フォームがあります。ラベルの多くは、モデルで指定されているものとは異なる名前を付ける必要があります。
attr_accessible :pin
シンプルフォームビュー:
= f.input :pin, :label => "Secret Code"
検証が失敗すると、エラーは、ビューで設定したラベル( "シークレットコード")ではなく、フィールドのモデル名( "ピン")を使用します。ユーザーは、どのフィールドにエラーがあるかについて混乱します。
現在、ラベルを変更するヘルパーがいます。
def fix_pin_errors(msg)
msg.gsub!('Pin', 'Secret Code')
end
しかし、私がこれを多くの分野で行っていると、それは退屈になり、DRYではなくなります。
モデルが付けた名前とは異なるラベルにエラーを一致させるための最良の方法は何ですか?