はじめに
最近railsを勉強し始めて、routes.rbの書き方を自分に中で復習したかったので、ここでまとめてみます
routes.rbとは
railsのroutes.rbとは、ブラウザから届いたリクエストに対して、コントローラーで定義したアクションを結びつけるための書くファイルのこと
具体的なコードを書いてみると以下のような感じ
Rails.application.routes.draw do
root "static_pages#home"
get "/help", to: "static_pages#help"
post "/login", to: "sessions#create"
delete "/logout", to: "sessions#destroy"
end
root,get,post,deleteなど色々書いてありますが、詳しく中を確認していきます
rootとは(コード:1行目)
root "static_pages#home"
誰かがルートURL("/")にアクセスすると、StaticPagesControllerのhomeアクションが呼び出され、そして、views/staticpages内のhome.html.erbの中身が表示されます。
つまり、サーバーを起動して、最初に表示したいページをrootに設定しておけば良いということだと思います。
getとは(コード:2行目)
get "/help", to: "static_pages#help"
"static_pages/help"(="/help")にアクセスしたときに、StaticPagesControllerのhelpアクションが呼び出され、views/staticpages内のhelp.html.erbの中身が表示されます。
postとは(コード:3行目)
post "/login", to: "sessions#create"
"sessions/create"(="/login")にアクセスしたときに、SessionsControllerのcreateアクションが呼び出されます。これは、ユーザーなどの新しいデータを生成する際に使用します。
deleteとは(コード:4行目)
delete "/logout", to: "sessions#destroy"
"sessions/destroy"(="/logout")にアクセスしたときに、SessionsControllerのdestroyアクションが呼び出されます。これは、ユーザーなどのデータを削除する際に使用します。