2014-05-16 55 views
1

我有一個命名空間的路線,看起來像:的link_to更新布爾引發ArgumentError

namespace :admin do 
    resources :feedbacks do 
    put :process 
    end 
end 

和控制器,看起來像:

def process 
    @feedback = Feedback.find(params[:id]) 
    @feedback.processed = true 
    @feedback.save 
end 

和IM產生link_to看起來像

= link_to("Unprocessed", admin_feedback_process_path(feedback), :method => :put, :remote => true) 

但是我得到一個錯誤的號碼參數錯誤的,看起來像

Started PUT "/admin/feedbacks/2/process" for 127.0.0.1 at 2014-05-16 12:36:05 -0700 

ArgumentError (wrong number of arguments (1 for 0)): 
    app/controllers/admin/feedbacks_controller.rb:56:in `process' 

傳遞的參數的正確數量是多少,或者我應該如何在路由中重新寫入控制器?

謝謝! -Alex

編輯:1

運行rake routes的樣子:

admin_feedback_process PUT /admin/feedbacks/:feedback_id/process(.:format) admin/feedbacks#process 
+0

對不起,這是我的問題中的拼寫錯誤,我會修復並添加我的耙路線的輸出 –

+0

我想它應該是'= link_to(「Unprocessed 」,admin_feedback_process_path(@feedback):方法=>:放,:遠程=>真)' – Pavan

+0

嘗試@feedback = Feedback.find(PARAMS [:feedback_id]) – Iceman

回答

1

我找到了工作。 「過程」是Rails的感謝的保留字來@Iceman指出了這一點。我去的行動叫processfeedback,這已經解決了我的問題

+1

高興你得到它的工作。 – Iceman