Ruby-on-Rails中最簡單的方法是如何在一些非模型表單中創建具有已知值和相同名稱的幾個簡單隱藏字段(在我的例子中是form_remote_tag,但是我猜猜這是不相關的)?非模型表單中的簡單隱藏字段
所謂「簡單隱藏字段」,我的意思是一個其中名稱僅僅是一個單一的字符串(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)。
有沒有辦法做到這一點(禁止定義助手)在更少的參數?
啊,那工作 - 但讓我意識到,我低估了我題。實際上我有很多表單,所有這些表單都會在隱藏字段中提交具有不同值的相同操作 - 所以這會生成警告,因爲輸入ID相同。 – Chowlett 2010-02-08 09:46:08