黄瓜:访问路径时未定义的方法错误

时间:2012-10-10 21:11:30

标签: ruby-on-rails-3 cucumber

我有一个黄瓜步骤

When /^I go to the Add Suggestions form$/ do
  visit new_manage_suggestions_path
end

和路线

namespace "manage" do
  resource :suggestions
end

rake路线输出

manage_suggestions POST /manage suggestions(.:format) manage/suggestions#create

当我运行黄瓜时,我得到了

undefined method `suggestions_path' for #<#<Class:0x000000064a4768>:0x000000064accd8> (ActionView::Template::Error)

为什么黄瓜会尝试这条路?

new_manage_suggestions_path在我的应用中运行正常,我有一个使用它的链接,并且运行正常。

1 个答案:

答案 0 :(得分:1)

在您的路线定义中,为了让您的应用生成正确的路线,您需要从单数resource切换为复数resources,因为您可能会有多个建议。

namespace "manage" do
  resources :suggestions
end

可以在singular resources上的Rails文档中找到更多详细信息,您可以在其中看到单个版本的路径名中不包含命名空间。