LoginSignup
4
3

More than 1 year has passed since last update.

パスワードに英数字混合のバリデーションを設定する方法

Posted at

deviseにはデフォルトでバリデーションが設定されていますが、英数字混合のバリデーションはデフォルトにはないため別途記述する必要があります。
記述内容は以下二文をuserモデルに記述するだけ。

user.rb
VALID_PASSWORD_REGEX = /\A(?=.*?[a-z])(?=.*?[\d])[a-z\d]+\z/i.freeze
validates :password, format: { with: VALID_PASSWORD_REGEX }

この正規表現を用いたバリデーションの記述により、パスワードに英数字混合のバリデーションを設定できました。
正規表現を用いれば英数字の他に全角かな/カナ漢字など、細かくバリデーションを設定することができます。

4
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
3