0
display_panel GET /display/panel(.:format) display#panel
控制器:
class DisplayController < ApplicationController
def panel
@approval = Approval.where(user_id: current_user.id)
end
end
查看:
<%= form_for approval,url: root_path, method: :patch do |f| %>
<%= f.check_box :pass%>
<%= f.submit %>
<% end %>
我覺得我做的補丁在一個get行動,這會導致錯誤,所以我希望使用mathod: :patch
來糾正它,但它仍然顯示我相同的錯誤。
我嘗試了許多解決方案,與其他類似的問題,還是不行。
我嘗試這樣做,但問題是,如果我定義route.rb一個更新路徑並限定在審批控制器更新方法,我無法通過使用批准找到批准= Approval.find(PARAMS [:ID]) ,因爲我正在做索引頁面的更新事情。 –
現在這混亂的,如果你沒有正確的形式端點或形式網址無法提交表單,就這麼簡單。在索引頁中進行更新並不意味着使用索引url作爲端點。無論如何,默認的索引路由映射到HTTP GET。你應該做的是在成功更新後重定向到索引頁面。 – kasperite
嗨,你是正確的,我認爲最大的問題是,我沒樣的方式來傳遞ID更新動作。我嘗試了幾種方法,現在可以工作了,謝謝你的幫助。 –