📝

resourcesについて

2024/05/06に公開

membercollection

member

collection

は、

resources

ルーティング内で特定のカスタムアクションを定義するために使用されます。

  • member:
    ルーティングにIDが含まれることを意味し、特定のインスタンスに対するアクション
    (例: 特定のユーザーのプロファイルを表示)に使用されます。
    route.rb
resources :users do
    member do
    get 'profile'
    end
end

と定義すると、/users/:id/profile**というURLが生成され、特定のユーザーのプロファイルページへのルーティングが可能になります
(https://zenn.dev/ganmo3/articles/aeb2726cf989f3)(https://qiita.com/hirokihello/items/fa82863ab10a3052d2ff).

  • collection:
    リソース全体に対するアクションで、IDを必要としません(例: ユーザーの一覧を表示)。
resources :posts do
    collection do
    get 'all_posts'
    end
end

と定義すると、/posts/all_posts**というURLが生成され、全ての投稿を一覧表示するページへのルーティングが可能になります
(https://zenn.dev/ganmo3/articles/aeb2726cf989f3)(https://qiita.com/hirokihello/items/fa82863ab10a3052d2ff).

Discussion