gem紹介「devise」
■gem名
devise
■公式サイト
https://github.com/plataformatec/devise
■内容
認証機能の実装
■メリット
認証に関連する多くのオプションがある。
多くの情報が揃っている、
(情報があるその分重たい(オーバースペック)という意見も多い。)
■こんな時使う
認証機能を実装する際、特に要件の多い認証機能を用いる際
例:
パスワードを変える時毎回メールの存在確認をしたい。
パスワードを連続で間違えた時の対応を行いたい。
etc
■install
gem 'devise'
rails generate devise:install
config/environments/development.rb:
config.action_mailer.default_url_options = { host: 'localhost', port: 3000 }
rails generate devise [MODEL]
rails db:migrate
他に沢山記事が出ていると思うのでそちらを御覧ください。
■コントリビューター
https://github.com/carlosantoniodasilva
■更新頻度
https://github.com/plataformatec/devise/releases
■LICENSES
MIT License
■関係gem
omniouth系fbやtwitter、LINEアカウントとの連携を行うgemがある
■その他
その他の認証系のgem
monban
https://github.com/jbhandari/monban
sorcery
https://github.com/Sorcery/sorcery
■一言
当たり前ですがメールやエラーがdefo英語ですので、毎回日本語用に変えてます、PR出してjp版のを作ればいいのですが。。。
また、slimでやっている場合は毎回gemを入れてslimに変えて、gemを消して、といった処理をしている人は多いかもしれません、これもPRを出せばいい話かもしれませんが。
https://github.com/slim-template/html2slim
シンプルにな認証機能でも今後のカスタマイズを考え、deviseを入れるタイプの方もいれば、最初は自分で作ってしまい、要件が増えてからdeviseを入れるタイプの人もいますが、それは案件の成長具合などにもよるので、CTOやチームリーダーと話し合い決めればいいかと思います。