ネストされたパラメータを受け入れるモデルがあります。
class Publication < ActiveRecord::Base
attr_accessible :authors_attributes, :title
has_many :authors
accepts_nested_attributes_for :authors
end
コールバックで、before_create
同じタイトルと著者の別の出版物が存在するかどうかを確認したいと思います。コールバックは次のようになります。
def find_duplicate
Publication.where(self.instance_values["attributes"].except("id", "created_at",
"updated_at")).each do |publication|
if publication.author_names.sort == @authors
return publication
end
end
end
問題は、どうやって入手するのかわからないということです@authors
。と同様の方法でパラメータを取得できると思いますがself.instance_values["author_attributes"]
、それはnilになります。他にどのようにパラメータにアクセスできますか?