Ruby on rails Rails form_一直尝试使用PUT,当我的路线是POST时

Ruby on rails Rails form_一直尝试使用PUT,当我的路线是POST时,ruby-on-rails,Ruby On Rails,我的路由文件中有以下内容: resources :payments do member do post :add_payment end end rake路由如下所示: add_payment_payment POST /payments/:id/add_payment(.:format) payments#add_payment 我的标签表格有: <%= form_for @loan, :url => add_payment_payment_path

我的路由文件中有以下内容:

resources :payments do
  member do
    post :add_payment
  end
end
rake路由如下所示:

add_payment_payment POST   /payments/:id/add_payment(.:format)     payments#add_payment
我的标签表格有:

<%= form_for @loan, :url => add_payment_payment_path, :html => { :class => 'form-horizontal' } do |f| %>

为什么它一直尝试使用PUT而不是POST?

可能是因为您的
@贷款
以前已经被持久化,因此form_for尝试创建PUT表单?需要查看控制器代码您可以在这些示例中看到,如果对象存在,则
form\u for
将向HTML添加
No route matches [PUT] "/payments/4/add_payment"