正确的写法是什么?
validates_uniqueness_of :a, :scope => [:b, :c], :unless => !d.nil?
发布于 2010-07-01 11:30:38
它非常简单:
validates_uniqueness_of :a, :scope => [:b, :c], :unless => :d
发布于 2010-07-01 11:28:43
只需将返回true或false的Proc
传递给:if
或:unless
选项:
validates_uniqueness_of :a, :scope => [:b, :c], :unless => Proc.new { |obj| !obj.d.nil? }
validates_uniqueness_of :a, :scope => [:b, :c], :if => Proc.new { |obj| obj.d.nil? }
(假设d
是模型的属性或方法。)
当然,这并不是唯一性的完美保证。默认情况下,存在可能允许重复的竞争条件。有关详细信息,请参阅documentation。
https://stackoverflow.com/questions/3154885
复制相似问题