私はレールにかなり慣れていないので、現在、URLをマスクして読みやすくする方法を探しています。
現在、ユーザーのネストされたリソースとしてジョブを持っているため、URL は次のように表示されます。
localhost:3000/users/1/jobs/8
URL を次のような単純なものとして表示したいと思います。
localhost:3000/jobs/8
これをルートに統合して、より読みやすい URL にする方法を知っておくとよいでしょう。
助けてくれてありがとう!
私はレールにかなり慣れていないので、現在、URLをマスクして読みやすくする方法を探しています。
現在、ユーザーのネストされたリソースとしてジョブを持っているため、URL は次のように表示されます。
localhost:3000/users/1/jobs/8
URL を次のような単純なものとして表示したいと思います。
localhost:3000/jobs/8
これをルートに統合して、より読みやすい URL にする方法を知っておくとよいでしょう。
助けてくれてありがとう!
resources
メソッドには次のオプションshallow
があります。
これにより、ブログ投稿へのコメントなど、他の方法では深くネストされるリソースの URL
/posts/a-long-permalink/comments/1234
を単に に短縮することができ/comments/1234
ます。
例:
resources :users, :shallow => true do
resources :jobs
end
これにより、以下が得られます。
user_jobs GET /users/:user_id/jobs(.:format) jobs#index
POST /users/:user_id/jobs(.:format) jobs#create
new_user_job GET /users/:user_id/jobs/new(.:format) jobs#new
edit_job GET /jobs/:id/edit(.:format) jobs#edit
job GET /jobs/:id(.:format) jobs#show
PUT /jobs/:id(.:format) jobs#update
DELETE /jobs/:id(.:format) jobs#destroy