嵌套路由 - URL中的current_user

时间:2014-09-06 17:32:49

标签: ruby-on-rails ruby-on-rails-4 routing routes nested-resources

我必须建模UserBlog。他们各自的网址是:

test.com/u/user_name   # User
test.com/blogs         # Blog

我试图实现博客嵌套到创建它的用户。例如。 test.com/u/user_name/blogs和文章test.com/u/user_name/blogs/article_name

但所有博客的索引都应回复:test.com/blogs

现在我的路线是这样的:

resources :users do
  resources :blogs, except: [:index]
end 

resources :blogs, only: [:index]

哪个不起作用..我缺少什么?

1 个答案:

答案 0 :(得分:0)

<强>路线

#config/routes.rb
resources :blogs, only: :index #-> domain.com/blogs -> blogs#index
resources :users, path: "u" do #-> domain.com/u/:id
   resources :blogs #-> domain.com/u/:user_id/blogs/:id
end

您需要查看路线的path argument

根据经验,您需要在路径文件的底部包含任何“非常规”路径。由于路线是从上到下确定的,如果您捕捉到文件顶部附近的模糊路径,您最终会导致与其他路线发生冲突