我有一个模型,它有两个字段,我将其称为 first_name 和 last_name,并且我想确保两者的组合是不区分大小写的唯一的。通过使用这个,我已经完成了一半:
validates_uniqueness_of :first_name, :scope => :last_name
问题是唯一性检查似乎是区分大小写的,即使文档说默认情况下它应该不区分大小写。所以给定一个现有的记录:
{ :first_name => 'John', :last_name => 'Smith' }
这将被允许:
{ :first_name => 'JOHN', :last_name => 'SMITH' }
以及在名字或姓氏中有任何大小写变化的任何附加记录。为什么允许这些记录?如何在两个字段中强制执行不区分大小写的唯一性?