validation以确保唯一但忽略空值?
我有以下模型字段validation:
validates_uniqueness_of :acronym, :scope => [:group_id], :case_sensitive => false
问题是这个字段是可选的,并且返回一个空/零值作为已经采用的首字母缩写词。 我只想validation一个首字母缩写词是否是唯一的,如果提供了一个值。有没有办法更新此validation只有在有实际值时才会发生..不是nil / empty?
谢谢
是的,您可以将两个可能的选项传递给可选字段的validation:allow_blank
或:allow_nil
,它们将分别跳过blank
和nil
字段的validation。 如果将validation更改为以下内容,则应获得所需的行为:
validates_uniqueness_of :acronym, :allow_blank => true, :scope => [:group_id], :case_sensitive => false