【发布时间】:2016-10-31 13:25:12
【问题描述】:
我有两个模型 Blog 和 User 具有以下关联
Blog belongs_to :user
我的路线如下
resources :users, shallow: true do
resources :blogs
end
这些是生成的路由
user_blogs GET /users/:user_id/blogs(.:format) blogs#index
POST /users/:user_id/blogs(.:format) blogs#create
new_user_blog GET /users/:user_id/blogs/new(.:format) blogs#new
edit_blog GET /blogs/:id/edit(.:format) blogs#edit
blog GET /blogs/:id(.:format) blogs#show
问题是为什么有些路由(例如new_user_blog)有正确的路由,而其他路由(edit_blog 应该是edit_user_blog)是错误的?
【问题讨论】:
-
在嵌套的
:users资源之外是否还有resources :blogs? -
是因为你请求了浅层路由,没有错。这就是浅路由会发生的情况
标签: ruby-on-rails ruby-on-rails-4 routing