0

validates_uniqueness_of :email, :username を使用しても、顧客は大文字と小文字が異なる同様の値で新しいアカウントを作成できることを発見しました。

例:

username
USERNAME

email@email.com
EMAIL@EMAIL.COM

これは仕様によるものですか、それとも何か不足していますか?

モデルにこの検証行があります

validates_uniqueness_of :email, :username

同様の値で期待どおりに機能します。

username
username

私はレール3.2.9を使用しています

4

1 に答える 1

3

はい、これは仕様です。 email@email.comEMAIL@EMAIL.COMは同じ文字列ではありません。状況で必要なのは、大文字と小文字の区別をオフにすることです。

validates_uniqueness_of :email, :case_sensitive => false
validates_uniqueness_of :username, :case_sensitive => false
于 2013-01-03T03:18:39.480 に答える