1

我在嵌套资源时遇到了一些问题。我想知道是否有更好的做事方式。

我有一个包含三个资源用户、列表和任务的待办事项列表应用程序。每个用户都有他/她自己的待办事项列表。

我的问题是我还能如何设置关联和路由以防止我在路由文件中嵌套三层。

resources :users do
 resources :list do
  resources :task do
  end
 end
end

我想阻止这种情况。干杯

4

2 回答 2

1

可能重复: Rails 3 级深层嵌套资源

尝试使用 :shallow 选项:

resources :users, shallow: true do 
  resources :lists, shallow: true do
    resources :task
  end
end
于 2013-07-21T15:33:35.263 回答
1

由于用户只能看到她/他自己的列表和任务,因此您不必嵌套这些资源。在你的路由文件中分别定义它们:

resources :users

resources :lists do
  resources :tasks
end

并从您的身份验证框架中检索当前用户:

class ListsController < ApplicationController

  def index
    @lists = current_user.lists
  end

end
于 2013-07-21T19:50:07.833 回答