我怎样才能找到我所拥有的特定路线的路径助手

时间:2015-07-22 11:34:45

标签: ruby-on-rails ruby-on-rails-3 routes

我有一个特定的路径助手,它在rails 2.3中完美运行但在rails 3.1上抛出错误。

这是路径助手。

shipping_price_store_return_path(store)

当我在rails 3.1中使用它时,它给出了错误说

NoMethodError: undefined method `shipping_price_store_return_path' for #<ActionDispatch::Integration::Session:0x007fb2da730228>

当我运行rake路线时这是shipping_price_store_return_index /stores/:store_id/return/shipping_price(.:format) {:action=>"shipping_price", :controller=>"return"}

任何人都可以建议这里可能出现的问题。

以下是路线文件的内容

resources :stores do      
      resources :return do
        match :shipping_price, :on => :collection
      end
end

1 个答案:

答案 0 :(得分:2)

由于您的资源名称是:return而不是:返回Rails决定将_index添加到嵌套在下面的任何集合。此更改已从rails 3开始完成。

所以新的rails 3路线应该是:

shipping_price_store_return_index_path

如果您想避开_index,则可以使用resources :returns,也可以resource :return