こんばんは
ログイン機能を作る時ってdeviseが便利ですよね。
ですが、デフォルトのままだとパスワードのバリデーションは文字の長さにしか設定されていません。(8~255文字だったと思います。)
今回はパスワード認証に半角英数字だけを許可するバリデーションを設定します。
やり方は簡単でmodelにvalidatesを追加する形で出来ます。
VALID_PASSWORD_REGEX = /\A[a-z0-9]+\z/i validates :password, format: { with: VALID_PASSWORD_REGEX }
とっても簡単ですね!
他にもstrong_password等のgemを使う方法もあります。(devise公式ではこちらを推奨しています)
How To: Set up simple password complexity requirements
それはまた別の機会に。。