【发布时间】:2021-05-16 22:54:19
【问题描述】:
我已将 Hotwire 整合到我最新的 Rails 6 应用程序中。 Hotwire/Turbo 部分运行良好,但我有一个简单的用户表单,我不想使用 Hotwire/Turbo。目前,所有表单提交都在我的控制器中击中format.turbo_stream {},但我希望这个特定的表单改为击中format.html {} 块。我注意到表单提交请求上的Accept 标头现在自动包含text/vnd.turbo_stream.html,但我不确定如何删除它。
表单没有包裹在 turbo_frame_tag 中;页面上的任何地方都没有 Turbo,而且看起来很标准:
<%= form_with model: @user do |f| %>
<%= f.file_field :avatar, class: "file-input", id: "avatar-input" %>
<%= f.text_field :name, class: "input wide", placeholder: "Your name here" %>
<%= f.submit "Next", class: "button-next-submit" %>
<% end %>
如何按表单强制执行此更改?我以前认为添加 turbo 标签是您更改行为/ Accept 标头的方式,但我现在看到,一旦您在控制器方法中添加 format.turbo_stream 块,表单就开始更喜欢它了。
【问题讨论】:
标签: ruby-on-rails ruby-on-rails-6 hotwire-rails