Чтобы экспортировать файл CSV в Rails 4.2 приложения, действие патча export_file
добавляется routes.rb:Rails - настраиваемое действие патча перенаправляются обновить
resources :payment_requests do
collection do
patch :export_file
end
end
В связи индекс form_tag
добавляется для CSV:
В rake routes
выходе, есть путь к export_file
:
export_file_payment_requests PATCH /payment_requests/export_file(.:format) payment_requestx/payment_requests#export_file
PATCH /payment_requests/:id(.:format) payment_requestx/payment_requests#update
PUT /payment_requests/:id(.:format) payment_requestx/payment_requests#update
Однако при экспорте csv действие равно update
вместо export_file
и вызывает ошибку при следующем экспорте. Что вызывает неправильную маршрутизацию до update
для patch
action export_file
?
Если export_file
объявлен как get
, то правильная маршрутизация.
put изменен на патч в рельсах 4. – user938363
'<% = form_tag export_file_payment_requests_path (формат: 'csv'), метод:: patch do%>' работает. Мысли put и patch были одинаковыми для метода: – user938363
rails использует 'patch' вместо' put' на находчивой маршрутизации для обновления ресурсов. здесь вы создаете новый ненаучный маршрут. то вам нужно выбрать лучший метод http для решения вашей проблемы. дело не в том, чтобы «поменять патч в рельсах 4.2». it'a об использовании правильного метода http среди всех из них. – dx7