ユーザー情報を登録してもらう準備まで
今週から応用カリキュラムに入っていますが、
いや〜、全く進まない。笑えるくらい。
読んでも読んでも正直全然わからない。
静寂の中だとキツイので、youtube見ながら今日は勉強してました。
でも見ない時より進むという。今日のコンディションはそんなもんと諦めて、
早速アウトプットしていきます。
①ログイン機能のライブラリをダウンロード
便利な世の中ですね!
「ログイン機能」自体がパック詰されてるなんて。
覚えたらめちゃくちゃ簡単ですよね!
使いこなすまでが難しいんですけど!
このパック、プログラミング界ではライブラリ、railsではgemと呼ぶ。
「devise」というgem
gemのインストール方法含めておさらい
gemfile に使うgemを記載 「gem 'devise'」(最終行)
↓
ターミナルで bundke installを実行し、今の状態のgemfileをインストール
↓
rails s でサーバーを再起動させて、インストール後の状態を繁栄
↓
rails devise:install この状態になったらようやくdeviseをアプリケーションにインストール (これすっごい忘れそう。bundle installでインストールした気にすっごいなる)
これでdeviseをアプリに導入できました
②ユーザー情報のデータベースを作る
アプリケーションにユーザー情報を入れておく箱を作る段階。
モデル作ってマイグレーションのファイル作って・・・・・。
っていうのをぜーんぶしてくるのが
「rails g devise user」
これでuserに必要な
・マイグレーションファイル
・modelファイル
・ルーティングの設定
を一度に行うことができる。便利!
あとは「rails db:migrate」
を実行すれば自動で作ってくれたファイルがデータベースに反映される。
これでユーザー登録するための箱、入れ物をアプリケーションに作れたってことですね。うまく行っていれば、squel pro で userが作られているはず。
③ビューファイルを作る
「rails devise g views]
これだけでOK。効率的ですね。
これだけでログインのビューファイル、新規登録ビューファイル
全部作ってくれます。
④データベースにカラムを加える
「rails g migration AddNamesToUsers」で加える。
でここの基礎は変わらないですが、AddNamesToUsersの部分が新しい知識。
これでひと段落・・・・と思いきやもう一息。
このままだとユーザーに何を送られてくるかわかったものじゃありません。
なんでも送られてきちゃいます。
そんなことにならないようにストロングパラメーター(requireメソッドとかpermitメソッド)を使いたい。
でもdeviseのコントローラーはいじれないみたいです。
ここで1つ覚えなきゃいけないのはgem内のものはいじれない!!こと
⑤application_controllerでストロングパラメーターを使う!
application_controllerはコントローラーで一番優先されるコントローラー。
ここに以下を記載
private def configure_permitted_parameters # メソッド名は慣習 # deviseのUserモデルにパラメーターを許可 devise_parameter_sanitizer.permit(:deviseの処理名, keys: [:許可するキー]) end
これで導入終わり!
次はマイページをつくる!