我刚刚发现,即使使用validates_uniqueness_of:email,:username也可以创建具有不同大小写相似值的新帐户。
示例:
username
USERNAME
email@email.com
EMAIL@EMAIL.COM
这是设计还是我错过了什么?
我的模型中有这个验证行
validates_uniqueness_of :email, :username
它按预期工作,具有相似的值:
username
username
我正在使用rails 3.2.9
答案 0 :(得分:3)
是的,这是设计的。 email@email.com 和 EMAIL@EMAIL.COM 不是同一个字符串,您希望在您的情况下关闭案例敏感度。
validates_uniqueness_of :email, :case_sensitive => false
validates_uniqueness_of :username, :case_sensitive => false