如何在 turbo_frame 中重定向表单?

问题描述

我需要添加一个保留以下表单数据的按钮,但是当按下它时会重置视图并停留在其中,而不重定向到控制器的索引,我尝试了 ajax 调用,但我没有知道为什么它对我不起作用。 如何提供解决方案并添加按钮以保存并继续?

<%= turbo_frame_tag dom_id(taxonomy) do %>
  <%= form_with(model: [:admin,taxonomy],id: dom_id(taxonomy)) do |form| %>
<div class="Box">
  <div class="field is-horizontal">
    <div class="field-body">
      <div class="field">
        <div class="control is-expanded is-relative">
          <%= form.text_field :name,placeholder: true,class: "input mt-5" %>
          <%= form.label :name,class: "label-hidden required" %>
        </div>
      </div>

      <div class="field is-narrow">
        <div class="control mt-5">
          <%= form.submit nil,class: "button is-primary" %>
          <%= link_to "#{ t '.cancel'}",admin_taxonomies_path,class: "button is-light" %>
        </div>
      </div>
    </div>
  </div>
</div>
<% end %>
<% end %>

解决方法

您需要为框架添加一个 target="_top" 属性:turbo_frame_tag dom_id(taxonomy),target: :_top 否则 Turbo 会尝试替换包含表单的当前帧。

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...