我正在尝试在 Rails 应用程序中使用turbo_frame_tag 来管理一些任务。我为我的任务创建了一个脚手架。
我将要使用的页面包装在 Turbo 框架标签内,如下所示:
<%= turbo_frame_tag "modal" do %>
<h1>New task</h1>
<%= render "form", task: @task %>
<br>
<div>
<%# <%= link_to "Back to tasks", tasks_path %> %>
<%= link_to "Cancel", "#", data: {
controller: "modals",
action: "modals#close"
}, class: "cancel-button" %>
</div>
<% end %>
Run Code Online (Sandbox Code Playgroud)
在我的主页 index.html.erb 文件中,我使用相同的标签将数据添加到“添加”按钮:
<%= link_to "Add", new_task_path, data: { turbo_frame: "modal" }, class: "btn btn-secondary", remote: true %>
Run Code Online (Sandbox Code Playgroud)
该模式工作正常。当我单击主页上的“添加”按钮时,它将打开。当我尝试提交操作来创建新任务时,我在终端上看到 200 响应,并且新任务已添加到我的数据库中。
但是(也)我在主页上收到“内容缺失”文本信息。该页面未重新加载。在开发者浏览器中我收到此错误:
<%= turbo_frame_tag "modal" do %>
<h1>New task</h1>
<%= …
Run Code Online (Sandbox Code Playgroud) ruby-on-rails hotwire-rails turbo-rails turbo-frames ruby-on-rails-7