Ruby on Rails Ⅴ 2章 deviseを活用しよう
201703012@home Progate | プログラミングの入門なら基礎から学べるProgate[プロゲート]
目次
ログイン必須ページをつくろう
未ログインユーザがnotesコントローラのnewアクションなどにアクセスしようとしたときに、ログインページにリダイレクトさせる。
コントローラで`before_action :authenticate_user!```すると、そのコントローラの全アクションへのアクセスを、ログイン済ユーザに制限できる。
また、deviseではフラッシュメッセージを自動生成してくれる。
ログイン前後で表示を切り替えよう
ログイン前後でヘッダーの表示を切り替えつつ、deviseで生成されるルーティングを学習しよう。
current_userヘルパー
よく使う。
deviseの処理を見てみよう
パスワードは暗号化されてusersテーブルのencrypted_passwordカラムに保存される。
rails console > User.last
で「確かに暗号化されてるねぇ」でレッスン終了。
deviseをカスタマイズしよう
deviseのビューをカスタマイズするには、rails g devise:views
でカスタマイズ用のビューファイルを生成する必要がある。
deviseとコントローラを使いわけよう
このままだとdeviseの新規登録画面と、Ⅳでscaffold使って作った新規登録画面が両方存在していて良くない。deviseの新規登録画面のみ使うよう、不要なアクションを消していく。
resourcesで生成されるルーティングを制限
routes.rb
のresourcesの第二引数に「only」を使うと、生成するルーティングを制限することができる。(最初から要らないものは作らない、ということ?)
それはわかったものの、作る時の設計とか大変そう。
今回の勉強時間:40分 累計勉強時間:12時間22分