技術

[Rails] deviseのパスワード認証を半角英数字だけ許可する

投稿日:

こんばんは

ログイン機能を作る時って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

それはまた別の機会に。。

-技術

執筆者:


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

関連記事

no image

[Rails]link_toをhelperから使う

こんばんは Railsでviewを作成している時に、helperからlink_t …

no image

[リアクティブフォーム]バリデーションチェックを任意のタイミングで走らせる。

Angularのリアクティブフォームで使っていると、 バリデーションを後付けした …

[ Rails ] ExecJS::RubyRacerRuntime is not supported. Please replace therubyracer with mini_racer in your Gemfile or use Node.js as ExecJS runtime.

こんにちは。たなかです。 モバイルアプリ開発の内容でブログを書くことが多い私です …

Amazon Rekognitionを使うと写真に自動でタグを付けられます。

こんにちは、高石です。 来月20日(5月20日)はエンたまもくもく会#5です。 …

no image

【Angular】Full calendarで横スクロールを実装

こんにちは Full Calendarにはいくつかの表示モードがあります。 こち …