这真的很奇怪。我在每个页面上存在的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><%= link_to content_tag(:i," ", :class=>"icon-bullhorn")+ " " +"Creations", creations_tab_user_path %></li>
奇怪的部分是这个link_to是一个导航栏中的链接,存在于每个页面上。有些页面可以运行,有些不是......
这是错误
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'
答案 0 :(得分:2)
由于您的路线是会员路线,因此预计会提供用户ID。因此,正如你所做的那样,没有参数调用助手是没有意义的。
我怀疑某些RoR-magic在某些情况下为帮助者提供了一个参数 - 但实际上它应该不起作用。
所以给那个帮助者一个用户或一个用户ID。