ruby-on-rails - 无法提交由 Rails Turbo Frame 响应绘制的表单
问题描述
turbo_frame 内的表单被阻止再次提交。
当前页面和表单操作都是相同的路径。我看到表单现在必须重定向到新位置或返回错误代码:turbo/pull/39。
我在每个索引视图上都有一个表单,向索引操作发送 GET 请求,它根据 url 查询参数过滤记录。这很好用。这在最新的 Rails 中不再可能了吗?是否有可以在此处应用的解决方法,以避免为表单操作创建新路线?
这些是幂等过滤/搜索请求,因此是 GET 方法。表单是收集和发送过滤器值的便捷方式。在这种情况下,带有 Hotwire 的 Rails 坚持重定向是否正确/有意?
更新:
如果我将表单提交为 xhr 而不是使用 Turbo,它会起作用。我在表格中添加local: false
和data-turbo: false
。然后添加 index.js.erbdocument.getElementByID(<id of turbo frame>)
并将其设置outerHTML
为呈现的部分。不确定这是否会由于不推荐使用的 ujs 功能而停止工作(也许mrujs可以介入)。
解决方案
推荐阅读
- symfony - 使用 Symfony Messenger 和 Rabbitmq 使用 JSON 消息
- python - 如何使条件格式在熊猫中起作用?
- javascript - 过滤从 UrlFetchApp 接收的 JSON 数据
- javascript - 我无法使用纯 JavaScript 创建动态导航菜单
- discord.js - 描述嵌入中的文本格式颜色
- node.js - res.status(400) 使我的链接 res.send("this message") 不会出现在客户端
- implicit - 如何为中缀运算符指定隐式参数?
- delphi - BDE dbidorestructure 返回空表
- javascript - 在 Firebase 中实现会话 cookie 后无法读取 null 的属性“getIdToken”
- google-play - Google Play 不显示应用内商品的本地价格