i具有以下行,该行生成表单标签;
<%= 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
有人知道为什么它会这样做,以及我能做什么来防止它?
这是耙路的输出;
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
背景是这是一个简单的编辑表格,我要它做的就是他的控制器的更新方法。
跟进
在我的布局文件中,我带来了CSRF_META_TAGS和我的javascript_include_tag
链接到一个名为"流"的文件,该文件具有以下
//= require jquery
//= require jquery_ujs
method: (:get|:post|:patch|:put|:delete)
来自文档:
"选项哈希。"
来源:http://api.rubyonrails.org/classes/actionview/helpers/formhelper.html
您的应用程序中的 //= require jquery_ujs
是吗?
也确保
<%= javascript_include_tag "application"%>
<%= csrf_meta_tag %>
存在于您的布局文件中。