带方法的rails 7-link_to:Delete仍执行GET请求 [英] Rails 7 - link_to with method :delete still performs GET request

查看:11
本文介绍了带方法的rails 7-link_to:Delete仍执行GET请求的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试使此链接生效,正在执行DELETE请求:

<%= link_to "Sign Out", destroy_user_session_path, method: :delete %>

但是,当我点击它时,我的浏览器仍然执行GET请求(由于明显的原因失败):

我在其他多个论坛帖子上看到,这可能与jQuery没有包括在一起有关。他们提到您需要取消app/javascript/application.js中的一行注释,但我的注释相当空:

// Configure your import map in config/importmap.rb. Read more: https://github.com/rails/importmap-rails
import "@hotwired/turbo-rails"
import "controllers"

这些论坛帖子也很旧,所以我怀疑在此期间发生了一些变化。

推荐答案

如建议的here,以下内容就足够了:

<%= link_to "Sign Out", destroy_user_session_path, data: { "turbo-method": :delete } %>

我在我的项目中测试了这一点,它似乎工作得很好。也多亏了@alexts,你基本上也明白了这一点,不过GitHub上的评论甚至消除了双重请求。

这篇关于带方法的rails 7-link_to:Delete仍执行GET请求的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆