仅当car.created_at为>时才可以使用validates_uniqueness_of汽车吗? 6.months.ago?
就我而言,
validates_uniqueness_of :car, :scope => [:dealer_id, :type], :on => :create
应该允许为同一个dealer_id创建一辆汽车并且只有在最后创建的带有此数据的汽车创建的汽车超过6.months.ago
答案 0 :(得分:1)
你可能会做这样的事情。
validate :be_a_new_car, :on=>:create
def be_a_new_car
old_car = self.class.where(:car=>self.car,:dealer_id=>self.dealer_id,:type=>self.type)
.where("created_at < ?",6.months.ago).first
self.errors.add(:car, "not old enough to be unique") if old_car
end