Ruby on Rails form_forselect字段的类

我正在头撞墙。 我想使用f.select标签做一个简单的select标签,但没有任何工作。 我举了一个例子:

 <%= f.select(:object_field, ['Item 1', 'Item 2', 'Item 3', 'Item 4', 'Item 4'], :class => 'my_style_class')%> 

好吧,基本上这是一个简单的列表,一旦表单被提交,它将值放入object_field 。 这一切工作,但查看页面来源的类标签不包括在内。 它不会抛出一个错误,它只是一起跳过它。

如果有人有任何build议,我将不胜感激。

试试这个方法:

 <%= f.select(:object_field, ['Item 1', ...], {}, { :class => 'my_style_class' }) %> 

select助手需要两个选项哈希值,一个用于select,另一个用于html选项。 所以你所需要的只是在项目列表之后给出默认的空白选项作为第一个参数,然后把你的类添加到html_options

http://api.rubyonrails.org/classes/ActionView/Helpers/FormOptionsHelper.html#method-i-select

你也可以像这样添加提示选项。

 <%= f.select(:object_field, ['Item 1', 'Item 2'], {include_blank: "Select something"}, { :class => 'my_style_class' }) %> 

这为我工作

 <%= f.select :status, [["Single", "single"], ["Married", "married"], ["Engaged", "engaged"], ["In a Relationship", "relationship"]], {}, {class: "form-control"} %> 

你可以在这里看到: http : //apidock.com/rails/ActionView/Helpers/FormBuilder/select

或在这里: http : //apidock.com/rails/ActionView/Helpers/FormOptionsHelper/select

select标签有最多四个参数,最后一个参数是html选项,这意味着你可以在这里放置类,要求,select选项。

 = f.select :sms_category_id, @sms_category_collect, {}, {class: 'form-control', required: true, selected: @set}