2012-10-10 81 views
1

路徑未定義的方法錯誤我有一個黃瓜一步黃瓜:關於訪問

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

和路線

namespace "manage" do 
    resource :suggestions 
end 

耙路輸出

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

當我運行黃瓜,我得到

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

爲什麼黃瓜嘗試這條道路?

new_manage_suggestions_path工作在我的應用程序很好,我有一個使用它,這是工作的罰款的鏈接。

+0

我知道你說的它工作在應用程序,你要是跑不過'耙routes'它在列表中顯示出來?另外,你需要在你的路線上做「做」嗎? '命名空間「管理」做「只是想知道它是不是真的趕上命名空間... – jstim

+0

好問題,我的代碼有做...正確地結束。我打錯了我的問題。我已經更新了這個問題。我還添加了我的路線輸出。 – Richard

+0

還在想着這件事,但另外一個問題。你確定你想要在你的路線'resource'而不是'resources'?用複數它可以讓你有多個建議。這是最後一個明顯的事情,我會切換,看看它是否會改變任何事情。 – jstim

回答

1

在您的路線定義中,爲了讓您的應用程序生成正確的路線,您需要從單數resource切換爲複數resources,因爲您可能有多個建議。

namespace "manage" do 
    resources :suggestions 
end 

更多細節可以在Rails文檔在singular resources,在那裏你可以看到奇異的版本不包括在其路徑名的命名空間中找到。