我有一个接受嵌套参数的模型:
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"]
,但结果为零。我还能如何访问参数?