Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 铁路";方法:删除“;删除不工作的资源_Ruby On Rails_Ruby_Methods_Http Delete - Fatal编程技术网

Ruby on rails 铁路";方法:删除“;删除不工作的资源

Ruby on rails 铁路";方法:删除“;删除不工作的资源,ruby-on-rails,ruby,methods,http-delete,Ruby On Rails,Ruby,Methods,Http Delete,我今天开始使用Rails。我决定遵循官方的“Getting Started”(入门)文档(),一切都进行得非常顺利,直到我点击了“删除一篇文章”部分。我按照教程进行操作并添加了一个操作: def destroy @video = Video.find(params[:id]) @video.destroy redirect_to videos_path end 我正在使用给定的方法呈现删除链接: <td><%= link_to 'Destroy', vid

我今天开始使用Rails。我决定遵循官方的“Getting Started”(入门)文档(),一切都进行得非常顺利,直到我点击了“删除一篇文章”部分。我按照教程进行操作并添加了一个操作:

def destroy
   @video = Video.find(params[:id])
   @video.destroy

   redirect_to videos_path
end
我正在使用给定的方法呈现删除链接:

<td><%= link_to 'Destroy', video_path(video), method: :delete, data: { confirm: 'Are you sure?' } %></td>

不幸的是,这不起作用。从不调用销毁控制器,也不会删除视频。使用内置服务器,我意识到没有删除,只有GET请求实际到达服务器

我认为问题在于Rails评估链接功能的方式。呈现的链接具有以下形式:

<a data-confirm="Are you sure?" href="/videos/3"  method="delete">Destroy</a>

但是,如果我手动将HTML标记更改为data方法,它将非常有效。显然,我需要rails将其呈现为数据方法


有人能帮忙吗?

尝试将链接更改为按钮

我最近也遇到了这个问题。“删除呼叫”在指向的链接上无效。

请尝试此操作

<td><%= link_to 'Destroy', video_path(video), method: :delete, data: { confirm: 'Are you sure?' }, remote: true %></td>


remote:true
将一些JavaScript代码嵌入DOM中的某个位置,处理
AJAX
调用和
响应。。这将发送一个带有
\u method=delete
参数的
GET
请求,该请求最终将路由到
destroy
方法。

Ruby 2.0.0p481 Rails 4.1.6这是一个非常奇怪的问题。我使用的是Ruby 2.0.0p353和Rails 4.1.6,但是我得到了正确的链接,其中“方法”是“数据方法”。唯一的问题是我正在使用HAML。你介意把你的档案寄出去吗。只想看一眼。我更新到了最新的Ruby(2.1.3),没有任何改变。@Touch
source'https://rubygems.org“gem”rails、“4.1.6”gem“sqlite3”gem“sass rails”、“~>4.0.3”gem“uglifier”、“>=1.3.0”gem“coffee rails”、“~>4.0.0”gem“jquery rails”gem“turbolinks”gem“jbuilder”、“~>2.0”gem“sdoc”、“0.4.0”,组::doc gem'spring',组::development gem'designe'
同样的事情,method=“delete”代替数据方法:(