gpt4 book ai didi

ruby-on-rails-4 - Rails 4 不使用表单方法 PATCH,默认为 POST

转载 作者:行者123 更新时间:2023-12-04 07:02:19 24 4
gpt4 key购买 nike

我有以下生成表单标签的行;

<%= form_for :stream, url: stream_path(@stream), method: :patch do |f| %>  

它生成以下内容;
<form method="post" action="/streams/52b02d267e3be39d3da5aa609f1049d7" accept-charset="UTF-8">

如果我把它改成 :put它仍然有帖子但如果我写 method: :get它将更改为 get
有谁知道为什么会这样做以及我可以做些什么来防止它?

这是 rake 路由的输出;
    Prefix Verb   URI Pattern                 Controller#Action
streams GET /streams(.:format) streams#index
POST /streams(.:format) streams#create
new_stream GET /streams/new(.:format) streams#new
edit_stream GET /streams/:id/edit(.:format) streams#edit
stream GET /streams/:id(.:format) streams#show
PATCH /streams/:id(.:format) streams#update
PUT /streams/:id(.:format) streams#update
DELETE /streams/:id(.:format) streams#destroy

背景是这是一个简单的编辑表单,我想要它做的就是他的 Controller 的更新方法。

跟进

在我的布局文件中,我引入了 csrf_meta_tags 和我的 javascript_include_tag链接到名为“stream”的文件,该文件具有以下内容
//= require jquery
//= require jquery_ujs

最佳答案

method: (:get|:post|:patch|:put|:delete)

从文档:

"in the options hash. If the verb is not GET or POST, which are natively supported by HTML forms, the form will be set to POST and a hidden input called _method will carry the intended verb for the server to interpret."



来源: http://api.rubyonrails.org/classes/ActionView/Helpers/FormHelper.html

关于ruby-on-rails-4 - Rails 4 不使用表单方法 PATCH,默认为 POST,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21604240/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com