MENU
当HP製作テーマ
おすすめサーバー

【Rails devise 代替】Rails sorcery【ユーザーログイン機能】

ふと、devise以外にログイン機能を実装する方法ってあるだろうか?と気になって調べてみたら、あるんですね!

備忘録も兼ねて残しておきます。

目次

DeviseとSorceryの違い

ググった程度の知識なのでご容赦ください。

Devise

コマンド1つでviewまで設定してくれる、オールインワン認証gem。

ただし、色々なファイルが同時生成(中には現状の開発では不要であるファイルも)されるため、カスタマイズはしにくい。

Sorcery

必要最低限な認証機能を搭載。カスタマイズ性は高いが、コードを自分で書く必要性はある。

また、Deviseほど動作が重くならない点は利点。

Deviseに比べ、情報が少ない。(ググったら7年前の記事とか普通に出てくる)

Rails Sorcery 導入

まずは、gemファイルに下記を記述。

gem 'sorcery'

コマンドで下記を実行。

bundle install
実行後
rails g sorcery:install

これにより、モデルとマイグレーションファイル、configが生成。

マイグレーションファイルにバリデーションを設定

必要があれば、マイグレーションファイルにバリデーションを設定。

問題がなければ、下記を実行。

rails db:migrate

独自のメソッド

Sorceryには、独自のメソッドも用意されているので、下記のGitHubページから確認してみてください。

deviseでも使うような似通ったものもあります。

  • URLをコピーしました!
目次