deviseでログイン機能 -Rails-

deviseはログイン機能を実装できるgemです

ライブラリなのでgem fileに書いてbundle installで使えるようになります。

挙動を見るために確認用のアプリを作ります。

テストアプリなのでscaffoldで簡単に作ってしまう。
rails new devise_sample -d postgresql
cd devise_sample
rails g scaffold blog title:string content:text
rails db:create
rails db:migrate
rails s
サーバー起動させたら、アドレスバーに
http://localhost:3000/devise_sample
でアクセスしたらscaffoldで自動的に作られた投稿画面が表示されます。
これでアプリの土台は完成!

さて!ログイン機能のdeviseを実装して見ましょう!
gem fileに
gem 'devise' と書いて
bundle installで適応に
そして次のコマンド打つとdevise関連のファイルが2つできます。
rails g devise:install
config/initializers/devise.rbファイルと
config/locales/devise.en.ymlファイル

そして次のコマンドでdevise関連のviewを作ります。
rails g devise:views

Userモデル作りましょう!ログインする人のnameやpassword入れるためにログイン機能にはマストです
rails g devise user
ログイン機能に必要なカラムが一通り揃ったmagration fileができるので、
rails db:migrate
でテーブル作ります。
ここまででログイン機能はできてます。
アドレスバーに
>users/sign_in
としたらログイン画面出ます!

これでdeviseのログイン機能の実装はできました!

deviseはログインした後に、デフォルトでroot_pathにリダイレクトされるのでconfig/routes.rbファイルにrootの設定をする。

(表示したいルート)

root 'blogs#index
こんな感じで。

さて、今時よくあるのはメール認証ですよね?入力したアドレスにメールが送られて来てURLタップして本人確認したらやっとログインできる仕組み。

次回はもう一歩踏み込んでこちらの実装をして見ます!

まずはローカルから・・・

 

スポンサーリンク

コメントを残す

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

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)