私はよく知られたRailsのチュートリアルを進めていますが、理解できない何かにぶつかっています.
名前またはパスワードが短すぎるユーザーを入力して検証ルーチンに違反しようとするとuser.save
、Rails コンソールで実行しようとすると、次のエラーが表示されますUser Exists
。
もちろん正しいエラーではない特定のエラーが発生するのはなぜですか? 一意性の検証を設定していますが、ここでトリガーする必要があるのはこれではありません。
class User < ActiveRecord::Base
before_save { self.email = email.downcase }
validates :name, presence: true, length: { maximum: 50, minimum: 8 }
VALID_EMAIL_REGEX = /\A[\w+\-.]+@[a-z\d\-.]+\.[a-z]+\z/i
validates :email, presence: true, format: { with: VALID_EMAIL_REGEX },
uniqueness: { case_sensitive: false }
has_secure_password
validates :password, length: { minimum: 8 }
end