我有一个看起来像这样的模型:
class thing < ActiveRecord::Base
has_many :bobbles
validate :has_two_bobbles
def has_two_bobbles
unless self.bobbles.size == 2
errors.add(:bobbles, "Need two bobbles")
end
end
end
从表单更新时我遇到了麻烦。如果我删除一个 bobble 并在同一个提交中添加一个 bobble,当我点击 self.bobbles.size 我得到 3 而不是 2。是否有任何地方可以限制 self.bobbles 只返回那些没有计划删除的记录?
我知道在控制器中您可以访问参数中的 _destroy,但是模型级别是否有任何内容表明是否要删除记录?