2015-02-06 94 views
0

1) Error: SummariesControllerTest#test_should_get_edit: ActionController::UrlGenerationError: No route matches {:action=>"edit", :controller=>"summaries", :summary=>"298486374", :summary_id=>"298486374"} test/controllers/summaries_controller_test.rb:23:in `block in '獲取UrlGenerationErrorr試圖運行測試

這是當是測試導致錯誤

test "should update summary" do 
    xhr :patch, :udpate, id: @summary.id, summary: { text: @summary.text } 
    assert_response :success 
end 

控制器動作:

def update 
    @listing = Listing.find(summary_params[:listing_id]) 
    @summary = Summary.find(params[:id]) 
    @summary.update_attributes(listing_id: summary_params[:listing_id], text: summary_params[:text], id: params[:id]) 
end 

和路線:

Rails.application.routes.draw do 
    resources :listings 
    resources :summaries 
    resources :highlights 
end 

enter image description here

路線在那裏,行動也在那裏沒有出現錯誤,有沒有人看到我的錯誤?感謝您的幫助。

回答

0

你有一個錯字(單詞 「更新」):

xhr :patch, :udpate, id: @summary.id, summary: { text: @summary.text } 

應該是:

xhr :patch, :update, id: @summary.id, summary: { text: @summary.text } 
+0

嘿謝謝你的迴應,這是一個很好的接觸,但它沒有解決錯誤。你有另一個想法嗎?它是相同的錯誤 – 2015-02-06 21:36:46

+0

發佈完整的堆棧跟蹤和'耙路線' – finishingmove 2015-02-06 21:43:21

+0

的輸出有耙路線,真的沒有完整的堆棧跟蹤,錯誤是它給了我的一切。 – 2015-02-06 22:15:48

0
test "should update summary" do 
    xhr :patch, :udpate, id: @summary.id, summary: { text: @summary.text } 
    assert_response :success 
end 

嘿,謝謝你的回覆,有與沒有問題路線,但我確實必須通過ID:@ summary.id,因爲它需要列表。我改變了測試,並通過了。