gpt4 book ai didi

ruby-on-rails - 非模型形式的简单隐藏域

转载 作者:行者123 更新时间:2023-12-03 16:00:55 25 4
gpt4 key购买 nike

在 Ruby-on-Rails 中创建几个具有已知值和相同名称的简单隐藏字段的最简单方法是什么?

通过“简单的隐藏字段”,我的意思是名称只是一个字符串( field_name )而不是数组的一部分( field_name[] ),因此可以简单地从 params 散列中读取该值作为 params[:field_name] 而不是 params[:field_name][0]
我发现

<% form_remote_tag :url => {:action => "do_act"} do %>
<%= hidden_field :field_name, 0, :name => "field_name", :value => "foo" %>
<%= submit_tag "Submit" %>
<% end %>

产生一个可接受的元素( <input id="field_name_0" name="field_name" type="hidden" value="foo" /> ),但如果我省略 :name 参数,则渲染字段的名称为 field_name[0] 。省略 0 显然会导致非常奇怪的行为。

如果只有一个这样的表单, <%= hidden_field_tag :field_name, "foo" %> 会生成一个可接受的元素,但如果有多个,则会生成 HTML 警告(重复的 ID)。

有没有办法在更少的参数中做到这一点(除非定义一个助手)?

最佳答案

我会用 hidden_field_tag并根据每个表单不同的值手动设置 ID。像这样:

<%= hidden_field_tag :field_name, 'value', :id => 'field_name_' + unique_value %>

哪里 unique_value可以是任何东西。如果这些表单有某种它们所引用的父记录,它可能是父的 ID。我认为这就是为什么您首先在同一页面上有多个类似表单的原因。

关于ruby-on-rails - 非模型形式的简单隐藏域,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2220591/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com