LoginSignup
0
0

More than 3 years have passed since last update.

[Rails] HTTPメソッドGETは省略した記述ができる

Last updated at Posted at 2020-12-14

目的

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だった場合、記述し忘れないよう注意しましょう!

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0