表記ミスかと思ったらちゃんとresource
も存在した。
##resources
routes.rb
...
resources :posts
...
Prefix Verb URI Pattern Controller#Action
posts_path GET /posts(.:format) posts#index
POST /posts(.:format) posts#create
new_post_path GET /posts/new(.:format) posts#new
edit_post_path GET /posts/:id/edit(.:format) posts#edit
post_path GET /posts/:id(.:format) posts#show
PATCH /posts/:id(.:format) posts#update
PUT /posts/:id(.:format) posts#update
DELETE /posts/:id(.:format) posts#destroy
##resource
indexとid付きのパスが生成されない。
たとえば、/profileでは常に「現在ログインしているユーザー自身」のプロファイルを表示し、他のユーザーidを参照する必要がないとする。
引用:https://railsguides.jp/routing.html#%E5%8D%98%E6%95%B0%E5%BD%A2%E3%83%AA%E3%82%BD%E3%83%BC%E3%82%B9
単数形で定義するのに注意!
routes.rb
...
resource :post
...
Prefix Verb URI Pattern Controller#Action
new_post_path GET /post/new(.:format) posts#new
edit_post_path GET /post/edit(.:format) posts#edit
post_path GET /post(.:format) posts#show
PATCH /post(.:format) posts#update
PUT /post(.:format) posts#update
DELETE /post(.:format) posts#destroy
POST /post(.:format) posts#create
どちらも同じコントローラーで同時に定義できる。