LoginSignup
47
46

More than 5 years have passed since last update.

Railsのroutesにつけるmemberってやつ

Last updated at Posted at 2018-07-31

メンバールーティングとは

デフォルトで作成されるRESTfulなルーティングは7つ(resourcesで指定。index,new,show,create,update,edit,deleteの7つ)ですが、
7つでなければならないということはありません。

「member」というURLの深堀りオプション

resources :users do
  member do
    get :followings
  end 

上記のように書くと、下記のように新たにルーティングが追加されます。

Prefix Verb            URI Pattern                     Controller#Action
followings_user GET    /users/:id/followings(.:format) users#followings

また、memberルーティングが1つだけしかないのであれば:onオプションを指定することで下記の用にブロックを省略できます。

resources :users do
    get :followings, on: :member
  end 

これらのURLにアクセスすると、usersコントローラのfollowingsアクションに行くようになります。

つまりは、
memberメソッドを使うとユーザーidが含まれているURLを扱えるようになります
なお、URLを指定するだけで、機能自体はModelやControllerによって実装されます。

47
46
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
47
46