好吧,我想在一个before_create摧毁多个记录:before_create - 摧毁多个记录
class InventoryItem < ActiveRecord::Base
belongs_to :user
belongs_to :item
before_create :replace_owned_items
protected
def replace_owned_items
user = self.user
item = self.item
owned_items = user.retrieve_owned_items(item)
unless owned_items.blank?
owned_items.each do |o|
o.destroy
end
end
end
end
我的问题是,只有一条记录最终被摧毁。
另一种是如果我使用摧毁! (如果它没有销毁,我想要引发一个异常),那么我会得到一个错误。
你如何完成破坏before_create中的多个记录?
不那么肯定关于这个问题,但作为一个注释,你的代码行'user = self.user'和'item = self.item'是多余的,'user'和self.user'是一样的,暗示'self'。就像说我=我:) – 2010-07-14 04:09:23