Ruby on rails 即使存在路由,也会出现路由错误

Ruby on rails 即使存在路由,也会出现路由错误,ruby-on-rails,routing,link-to,Ruby On Rails,Routing,Link To,这真的很奇怪。我在每个页面上存在的链接上遇到路由错误 这是我的路线 resources :users do member do get :creations_tab, :path => '/creations' end 也就是说 creations_tab_user_path GET /users/:id/creations(.:format) users#creations_tab 这就是错误发生的地方 <li><%= li

这真的很奇怪。我在每个页面上存在的链接上遇到路由错误

这是我的路线

resources :users do
    member do
      get :creations_tab, :path => '/creations'
    end
也就是说

creations_tab_user_path  GET     /users/:id/creations(.:format)  users#creations_tab
这就是错误发生的地方

 <li><%= link_to content_tag(:i," ", :class=>"icon-bullhorn")+ " " +"Creations", creations_tab_user_path %></li>

由于您的路由是一个成员路由,它将期望提供一个用户id。因此,像您这样不带参数地调用帮助程序是没有意义的

我怀疑在某些情况下,某种RoR魔法为助手提供了一个论点——但实际上它不应该起作用

因此,给该助手一个用户或用户id

ActionController::RoutingError - No route matches {:action=>"creations_tab", :controller=>"users"}:
  (gem) actionpack-3.2.12/lib/action_controller/metal/exceptions.rb:11:in `initialize'
  (gem) actionpack-3.2.12/lib/action_dispatch/routing/route_set.rb:533:in `raise_routing_error'
  (gem) actionpack-3.2.12/lib/action_dispatch/routing/route_set.rb:529:in `rescue in generate'
  (gem) actionpack-3.2.12/lib/action_dispatch/routing/route_set.rb:521:in `generate'
  (gem) actionpack-3.2.12/lib/action_dispatch/routing/route_set.rb:562:in `generate'
  (gem) actionpack-3.2.12/lib/action_dispatch/routing/route_set.rb:587:in `url_for'
  (gem) actionpack-3.2.12/lib/action_dispatch/routing/url_for.rb:148:in `url_for'
  (gem) actionpack-3.2.12/lib/action_view/helpers/url_helper.rb:107:in `url_for'
  (gem) actionpack-3.2.12/lib/action_dispatch/routing/route_set.rb:213:in `creations_tab_user_path'
  app/views/layouts/_header.html.erb:43:in `_app_views_layouts__header_html_erb__541622111_70332144'