Rails 4:没有路由匹配[PATCH]" /"

时间:2016-08-31 00:02:39

标签: ruby-on-rails routes

路线:

 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来纠正错误,但它仍然会向我显示相同的错误。

我尝试了其他类似问题的许多解决方案,但仍无效。

1 个答案:

答案 0 :(得分:0)

更新您的表单:

<%= form_for @approval, url: [update_path] , method: :patch  do |f| %>
    <%= f.check_box :pass%>
    <%= f.submit %>
<% end %>

[update_path]应该是approval_path,而不是root_path。运行rake routes | grep approval以验证您是否已设置patch路由以供审批。