目的
webアプリケーションのユーザーのログインとログアウト機能を実装中です。
"ログイン"をクリックしたらログインしたユーザー個人の画面へ遷移し、
"ログアウト"をクリックしたら"ログイン・新規登録"のどちらかしかできない(実装途中のため)
最初の画面へ遷移するようにしたいです。
学び
deviseを用いているのでapplication.html.erbに記述していきます。
コードを書いている途中で「"ログイン"のパスの後にはHTTPメソッドを記述しなくても正しく動く」ことがわかりました。
※"ログイン"のVerbはGET
※"ログアウト"のVerbはDELETE
application.html.erb
<%= link_to "ログイン", new_user_session_path, 〜 %>
application.html.erb
%= link_to "ログアウト", destroy_user_session_path, method: :delete, 〜 %>
これはRailsの仕様で、「GETはたくさん使うから、いちいち書かなくていいよ!」というルールだからだそうです。
なので
application.html.erb
<%= link_to "ログイン", new_user_session_path, 〜 %>
↑
#実際にはmethod: :getが記述してある
このような状態だということですね。
Routelingを確認してGET以外のVerbだった場合、記述し忘れないよう注意しましょう!