関連付けの en.yml の検証メッセージに問題があります。
これは私が見ているメッセージです:
Name infos prev first name can't be blank
変更したい 2 つの点:
1.「名前情報」は関連付けられたモデルの名前であり、表示したくない
2.「前の名」は「前の名」と表示する必要があります
私はグーグルで検索し、さまざまなことを試してきました。私が見たところ、以下は「はず」ですが、そうではありません(アプリを再起動しました)。
**contact_info.rb:**
class ContactInfo < ActiveRecord::Base
has_many :name_infos
accepts_nested_attributes_for :name_infos, :allow_destroy => true
end
**name_info.rb:**
class NameInfo < ActiveRecord::Base
belongs_to :contact_info
validates :prev_first_name, :presence => true,
:if => :name_subcat_is_first_name?
private
def name_subcat_is_first_name?
subcat == 'first'
end
end
**routes.rb:**
resources :users do
resources :contact_infos do
collection do
get 'get_full_fields'
get 'clear_fields'
end
resources :name_infos
end
end
**en.yml:**
en:
activerecord:
attributes:
contact_info:
name_infos:
prev_first_name: "Previous First Name"
コンソールでこれをテストするたびに、変更されません:
irb(main):050:0> ContactInfo.human_attribute_name("prev_first_name")
=> "Prev first name"
irb(main):051:0> NameInfo.human_attribute_name("prev_first_name")
=> "Prev first name"
私はもう試した:
**en.yml:**
en:
activerecord:
attributes:
users:
contact_info:
name_infos:
prev_first_name: "Previous First Name"
しかし、それは違いはありません。
誰でもこれに光を当てることができますか?