Rails を使用して、保存時に「曲フィールドを空にすることはできません」のようなエラー メッセージを取得しようとしています。次の操作を実行します。
validates_presence_of :song_rep_xyz, :message => "can't be empty"
...「Song Rep XYW は空にできません」とのみ表示されますが、フィールドのタイトルがユーザーフレンドリーではないため、これは適切ではありません。フィールド自体のタイトルを変更するにはどうすればよいですか? データベース内のフィールドの実際の名前を変更することはできますが、複数の「song」フィールドがあり、特定のフィールド名が必要です。
Rails の検証プロセスをハックしたくないので、それを修正する方法があるはずだと感じています。
ベストアンサー1
現在、人間化された名前とカスタムエラーメッセージを設定する一般的な方法は、ロケールを使用する。
# config/locales/en.yml
en:
activerecord:
attributes:
user:
email: "E-mail address"
errors:
models:
user:
attributes:
email:
blank: "is required"
これで、「email」属性の人間化された名前と存在検証メッセージが変更されました。
検証メッセージは、特定のモデル + 属性、モデル、属性、またはグローバルに設定できます。