Какой самый простой способ в 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 (дублированные идентификаторы), если их несколько.
Есть ли способ сделать это (исключая определение помощника) в меньшем количестве аргументов?