Ruby on rails 4 我应该在联接表上使用嵌套路由吗

Ruby on rails 4 我应该在联接表上使用嵌套路由吗,ruby-on-rails-4,Ruby On Rails 4,初学者问题对不起。我在一个测试应用程序中有3个表,“交易”、“投资者”和“机会”。机会就是加入 机会属于交易和投资者,而交易和投资者都有很多机会 我希望能够查看交易或投资者范围内的所有机会,但也能在应用程序中列出所有机会。我该如何为此设置路线?像下面这样的 resources :deals do resources :opportunities end resources :investors do resources :opportunities end

初学者问题对不起。我在一个测试应用程序中有3个表,“交易”、“投资者”和“机会”。机会就是加入

机会属于交易和投资者,而交易和投资者都有很多机会

我希望能够查看交易或投资者范围内的所有机会,但也能在应用程序中列出所有机会。我该如何为此设置路线?像下面这样的

  resources :deals do
    resources :opportunities
  end 
  resources :investors do
    resources :opportunities
  end
  resources :opportunities

如果您希望在Opportunity页上显示Opportunity,使用与普通Opportunity页相同的行为(因为它们可能由相同的控制器/视图处理),那么这是有意义的。在这种情况下,嵌套的
:opportunities
可能是只读的(opportunities将通过其顶级路径进行更新),因此您可能需要执行
参考资料:opportunities,only::index


然而,根据我的经验,像
opportunities
这样的嵌套资源更可能直接显示在给定交易或投资者的页面上。在这种情况下,您根本不需要那些嵌套的
resource:opportunities
路由。您只需在DealsController的
show
操作中加载
@deal
,并使用show页面模板中的
@deal.opportunities
打印机会。

尝试从命令行运行
rake routes
,然后查看输出。这会让你很好地了解如果你访问了这些页面,你会看到什么。