如何设置我不想在表单中显示的属性值(称为' type')? (即我不希望用户能够在表单中选择它。我想自己设置值。)
我的表单代码是:
<%= form_for @unit do |f| %>
<%= f.datetime_select :start_datetime %>
<%= f.text_field :notes %>
<% end %>
这会产生以下的参数:
{'unit' => {'start_datetime' => value, 'notes' => value }}
我想设置&#39;类型&#39;属性(我确定的某个值),以便表单返回以下参数:
{'unit' => {'type' => value, 'start_datetime' => value, 'notes' => value }}
form_for是否有一些选项可用于包含&#39; type&#39;参考并设定其价值?
答案 0 :(得分:2)
您需要在form_for中使用hidden_field
,例如:
<%= form_for @unit do |f| %>
<%= f.hidden_field :type, :value => "your_value" %>
<%= f.datetime_select :start_datetime %>
<%= f.text_field :notes %>
<% end %>
这会给你像参数:
{'unit' => {'type' => value, 'start_datetime' => value, 'notes' => value }}
答案 1 :(得分:2)
您可以使用 hidden_field
这样传递
<%= f.hidden_field :type,:value=>"some_value" %>
<%= form_for @unit do |f| %>
<%= f.hidden_field :type, :value => "some_value" %>
<%= f.datetime_select :start_datetime %>
<%= f.text_field :notes %>
<% end %>