我细读Ruby on Rails Guides article on ActiveRecord validations,我碰到这个整洁的摘录出来有关uniqueness
验证:如何在Rails中为ActiveRecord模型添加自定义唯一性验证?
还有一个:你可以用它来定义唯一性约束是否区分大小写或不CASE_SENSITIVE选项。该选项默认为true。
这是一个非常有用的功能,可以确保两个用户无法使用相同的用户名或电子邮件进行注册,例如。但是,我想使用类似的验证,但使用不同的方法来确定字符串的平等。我想确保我的所有条目在squeeze
下都是唯一的。
作为一个例子,说我的Post
模型有一个文本属性content
。我想确保如果foo bar
已经在数据库中,它将不会接受foo bar
或foo bar
。有没有更好的方法来做这件事,而不仅仅是添加一个自定义验证来遍历每个条目的Post.all
,squeeze
,并将其与squeeze
d content
进行比较?我无法想象这个比例很好。