Ruby on rails 修改Ruby Rails的URL模式

Ruby on rails 修改Ruby Rails的URL模式,ruby-on-rails,ruby,path,routes,Ruby On Rails,Ruby,Path,Routes,我试图显示一个页面,以显示当前用户的所有产品。因此,我在products视图下创建了一个新页面showall.html.erb 我已经做了以下工作: 产品控制器 def showall @products = current_user.products end 路线 resources :products do get :showall end 我知道,由于嵌套的资源,URL模式变得 /products/:product_id/showall(.:format) 如何真正摆脱pr

我试图显示一个页面,以显示当前用户的所有产品。因此,我在products视图下创建了一个新页面showall.html.erb

我已经做了以下工作:

产品控制器

def showall
  @products = current_user.products
end
路线

resources :products do
  get :showall
end
我知道,由于嵌套的资源,URL模式变得

 /products/:product_id/showall(.:format)

如何真正摆脱product_id部分以实现/products/showall,从而拥有一个特殊页面来呈现当前用户提供的所有产品。

您应该按如下方式更改路由定义:

resources :products do
  collection do 
    get :showall
  end
end
检查相应的


希望有帮助

解决了我的问题,但我面临“未找到资源”:(我有这个链接
  • ,但找不到资源:(:(:)你能提供更多关于新错误的信息吗?它来自哪里?它来自控制器吗?如果你有堆栈跟踪-它也会有帮助。发现了我的问题。愚蠢的我谁把showall放在\u操作之前:设置产品,只:[:显示,:编辑,:更新,:销毁].感谢您之前给出的解决方案!非常有用!!!!