Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/58.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Html Rails选择标记的默认值+;活动记录_Html_Ruby On Rails_Form Helpers - Fatal编程技术网

Html Rails选择标记的默认值+;活动记录

Html Rails选择标记的默认值+;活动记录,html,ruby-on-rails,form-helpers,Html,Ruby On Rails,Form Helpers,我正在尝试将select标记的默认值设置为保存在活动记录中的模型中的值。同时,如果未指定任何值(例如,在创建模型时),我希望显示列表,以选择选择标记的特定字段 我想这样做: <% valid_years = Array.new %> <% for i in 1900..Time.now.year %> <% valid_years << i %> <% end %> <%= f.label t :label_year_of_b

我正在尝试将
select标记的默认值设置为
保存在活动记录中的模型中的值。同时,如果未指定任何值(例如,在创建模型时),我希望显示
列表
,以选择选择标记的特定字段

我想这样做:

<% valid_years = Array.new %>
<% for i in 1900..Time.now.year %>
<%   valid_years << i %>
<% end %>
<%= f.label t :label_year_of_birth %>
<%= f.select :year_of_birth, options_for_select(valid_years), class: "" %>
替换

<%= f.select :year_of_birth, options_for_select(valid_years), class: "" %>


在哪里
form\u for\u object\u name是由于您没有共享
而传递到表单的对象

options\u for_select
采用第二个参数,即
form\u for_object\u name.year\u of_birth
作为所选的
值。

如果对象名称的
form\u。出生年份
为零,则在您的情况下,选择将默认为选项的第一个值,即
1900

谢谢!完全忘记了。以前用过一次:P
<%= f.select :year_of_birth, options_for_select(valid_years), class: "" %>
<%= f.select :year_of_birth, options_for_select(valid_years, form_for_object_name.year_of_birth), class: "" %>