0

我对 Rails 相当陌生,目前正在寻找一种方法来掩盖 URL,以便它们更具可读性。

目前我有工作作为用户的嵌套资源,所以我的 URL 显示为:

localhost:3000/users/1/jobs/8

我希望将 URL 显示为简单的内容,例如:

localhost:3000/jobs/8

很高兴知道如何将其集成到我的路线中以获得更具可读性的 URL。

提前感谢您的帮助!

4

1 回答 1

3

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
于 2012-07-03T08:29:16.717 回答