- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在学习 Turbo Frames 和 Streams + Stimulus,所以我可能没有 100% 走上正轨。我有一个用于创建新对象的表单,但在表单中我想要一个选择组件,它会根据选择显示某些字段。请务必注意,因此,我不想在用户做出此选择之前提交表单。
这是我的:
<div class="form-group mb-3">
<%= form.label :parking, class: 'form-label' %>
<%= form.number_field :parking, class: 'form-control' %>
</div>
<%= turbo_frame_tag "turbo_transactions" do %>
<%= render 'property_transactions' %>
<% end %>
<div class="form-group mb-3" data-controller="property-transaction">
<%= label_tag :property_transactions, 'Property in:', class: 'form-label' %>
<%= select_tag :property_transactions, options_for_select(@property_transactions.collect {|p| [p.name, p.id]}), { data:
{ action: "property-transaction#redraw", property_transaction_target: 'transaction', turbo_frame: 'turbo_transactions' },
class: 'form-control', prompt: '', autocomplete: 'off' } %>
</div>
<% if @property_transaction %>
<%= turbo_frame_tag @property_transaction.en_translation_key do %>
<div class="form-group mb-3">
<%= render @property_transaction.en_translation_key %>
</div>
<% end %>
<% end %>
import { Controller } from "@hotwired/stimulus";
import Rails from "@rails/ujs";
export default class extends Controller {
static targets = [ "transaction" ];
redraw() {
const params = { property_transaction: this.transaction };
Rails.ajax({
type: 'post',
dataType: 'json',
url: "/set_property_transaction",
data: new URLSearchParams(params).toString(),
success: (response) => { console.log('response', response) }
});
}
get transaction() {
return this.transactionTarget.value;
}
}
def set_property_transaction
respond_to do |format|
format.json
format.turbo_stream do
if @property_transactions
@property_transaction = @property_transactions.select { |p| p.id == property_transaction_params }
else
@property_transaction = PropertyTransaction.find(property_transaction_params)
end
end
end
end
<%= turbo_stream.replace @property_transaction.en_translation_key %>
<%= turbo_frame_tag "rent" do %>
<!-- some input fields -->
<% end %>
<%= turbo_frame_tag "rent-with-option-to-buy" do %>
<!-- other input fields -->
<% end %>
<%= turbo_frame_tag "sale" do %>
<!-- more input fields -->
<% end %>
选择选项时,出现这个错误:
Started POST "/set_property_transaction" for ::1 at 2022-09-07 19:49:03 -0600
Processing by PropertiesController#set_property_transaction as JSON
Parameters: {"property_transaction"=>"2"}
Completed 406 Not Acceptable in 223ms (ActiveRecord: 0.0ms | Allocations: 1879)
ActionController::UnknownFormat (PropertiesController#set_property_transaction is missing a template for this request format and variant.
request.formats: ["application/json", "text/javascript", "*/*"]
request.variant: []):
我对此的理解是我缺少 set_property_translation 模板,但我确实有它。不确定我还能做些什么来让它变得可识别。
最佳答案
Les Nightingill 的评论无疑将我引向了正确的方向。我会将所需的更改放在这里。
<div class="form-group mb-3" data-controller="property-transaction">
<%= label_tag :property_transactions, 'Propiedad en:', class: 'form-label' %>
<%= select_tag :property_transactions, options_for_select(@property_transactions.collect {|p| [p.name, p.id]}), { data:
{ action: "property-transaction#redraw", property_transaction_target: 'transaction', turbo_frame: "turbo_transactions" },
class: 'form-control', prompt: '', autocomplete: 'off' } %>
</div>
<%= turbo_frame_tag "dynamic_fields" %>
import { Controller } from "@hotwired/stimulus";
import { post } from "@rails/request.js";
export default class extends Controller {
static targets = [ "transaction" ];
async redraw() {
const params = { property_transaction: this.transaction };
const response = await post("/set_property_transaction", {
body: params,
contentType: 'application/json',
responseKind: 'turbo-stream'
});
if (response.ok) {
console.log('all good', response); // not necessary
}
}
get transaction() {
return this.transactionTarget.value;
}
}
<%= turbo_stream.update "dynamic_fields" do %>
<%= render partial: @property_transaction.en_translation_key %>
<% end %>
关于javascript - 使用选择刷新 Turbo Frames 而无需在 Rails 7 上提交,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/73642924/
我最近在为大学做一些任务,其中包括使用 Turbo Profiler(不幸的是,该软件在任务中隐式声明)来分析 Simpsons 数值积分的 C 和 Pascal 实现。我遇到了一个非常奇怪的案例,怀
“阴极射线管”? “C 运行时”?两者对我来说都没有多大意义;完全是别的什么? 最佳答案 你是对的,它是“阴极射线管”。已经是过去式了 :) 2005 年之前最常见的显示类型。 CRT 单元中的大多数
如何在Turbo C++中实现vesa模式? 最佳答案 我以前是这样做的:你需要实现数据结构和功能,如确定here . 很多 reg.h.al 和东西。 关于turbo-c++ - Turbo C++
我正在使用 Turbo,您可以在这里找到有关它的更多信息:https://www.turbo360.co/docs 我想做的是在创建帖子之前将参数附加到帖子上。在本例中,我尝试附加个人资料。我没有收到
我想问那些有使用 Turbo C++ 3.0 编码经验的人这个问题。 我正在尝试用它制作一个文本用户界面控制台应用程序,我看到 Turbo C++ 3 有一个选项可以在您的程序中链接 Turbo Vi
根据各种消息来源,Rails 7 中表单验证失败的方法是使用状态 422 无法处理的实体进行响应。然而,在我的例子中,这导致 Turbo 发出另一个 GET 请求,这不太可能是预期的结果。 日志如下所
我开始在 Rails 6 中使用 Hotwire 和 Turbo,但遇到 Turbo 无法替换我的 Turbo 框架的问题。我收到以下错误消息:Response has no matching el
在显示类别列表的 View 中,下面有一小部分显示这些类别的“默认”。当用户单击此处时,它会被下拉表单取代,用户可以在其中选择新的默认值。提交表单后,页面的两个部分 - 类别列表以及显示默认值的下部
我使用 Azure Open AI、Langchain 和 Streamlit 构建了一个非常简单的应用程序。以下是我的代码: from dotenv import load_dotenv,find_
我使用 Azure Open AI、Langchain 和 Streamlit 构建了一个非常简单的应用程序。以下是我的代码: from dotenv import load_dotenv,find_
这是 https://github.com/hotwired/turbo-rails/issues/122 的伴侣 复制APP代码:https://github.com/jasonfb/TR001 使
我正在尝试制作在delphi XE7上加密并在PHP端解密的程序 我使用采用 AES 256 加密 CBC 模式的 Lock box 3.6.2。 德尔福XE7代码: Main.pas unit Ma
我是汇编语言的新手,我的代码有问题。起初我尝试了 1 个输入,然后是 1 个输出,它工作得很好。但是当我尝试 2 个输入时。这就是问题出现的时候。当它询问“性别”时,输入 1 和输出 1 似乎重叠了。
我正在按照本教程 ( https://www.turbo360.co/tutorial/audio-streaming-app ) 创建一个音频流网站,该网站允许用户将音乐文件上传到他们的页面。但是,
我有一个表格 Goal Name 我想替换。 作为回复,我发送 303 和“位置:/added_goal”和“/added_
这是网络上的一个常见问题,但我没有找到任何解决我的问题的方法...... 当我单击指向其他页面的链接时,我在所有 Rails 应用程序的控制台中都有相同的警告消息 现在只需要找到解决方案... The
我正在实现 an assemblinker for the 16-bit DCPU来自游戏 0x10c。 有人向我建议的一种技术是使用“覆盖,就像过去在 Turbo Pascal 中一样”,以便在运行
关闭。这个问题是opinion-based .它目前不接受答案。 想改善这个问题吗?更新问题,以便可以通过 editing this post 用事实和引文回答问题. 7年前关闭。 Improve t
我们在 Turbo Pascal 中有一个旧应用程序,它可以将其内部状态保存到文件中,并且我们需要能够在 C# 应用程序中读取/写入该文件。 旧应用程序通过转储各种内存中数据结构来生成文件。在一个地方
我刚刚了解了立交桥涡轮服务及其查询数据的能力。我尝试过以下查询,效果很好: [out:json][timeout:25]; ( node["highway"]({{bbox}}); ); out bo
我是一名优秀的程序员,十分优秀!