ネストされたモデル属性は単数として定義されているため、エラー メッセージは翻訳されませんが、エラー メッセージでは複数形が検索されます。
has_many :addresses のモデル 'Person' があります。この Person モデルは、'Addresses' のネストされた属性を受け入れます。Person モデルと一緒に Addresses のみを作成しています。
私のロケールファイルは次のようになります
en:
activerecord:
models:
person:
one: "Person"
other: "People"
address:
one: 'Address'
other: 'Addresses'
attributes:
person:
first_name: 'First name'
last_name: 'Last name'
middle_name: 'Middel name'
address:
street: street
city: city
country: country
エラーメッセージの場合:
en:
errors: &errors
format: ! '%{attribute} %{message}'
messages:
blank: can't be blank
単一のモデルで動作しますが、ネストされた属性では検証メッセージに問題があります。
メッセージは次のように表示されるため:
@messages=
{:first_name=>["can't be blank"],
:last_name=>["can't be blank"],
:"addresses.street"=>["can't be blank"],
:"addresses.city"=>["can't be blank"]}>
ルックアップでは、addresss.street の変換が見つかりません。これは、yml ファイルの address.street にすぎないためです。
すべてのエントリを 2 倍にすることなく、addresses.street を探すときに address.street を見つけるにはどうすればよいですか?