f.select 与select_tag 的区别
select_tag(name, option_tags = nil, options = {}) public创建一个下拉选择框,或者如果:multiple选项设置为true,则创建一个多选选择框。
Helpers::FormOptions可用于创建常见的选择框,例如国家、时区或相关记录。option_tags是一个字符串,包含选择框的选项标记。
select_tag 'user_id', options_for_select(@users.collect{ |u| [u.name, u.id] })相当于
<select id="user_id" name="user_id"> <option value="1">Brad</option> <option value="2">Angie</option> <option value="3">Jenny</option> </select><%= select_tag 'sex', options_for_select(['男', '女']) %>相当于
<select id="sex" name="sex"> <option value="male">男</option> <option value="female">女</option> </select>也可以这么写
<%= select_tag :sex, options_for_select(['男, '女 ']) %>
<%= f.select :area, options_for_select([['a','a'],['b','b'],['c','c']], params[:area]), {}, { :class => 'span3 controls controls-row' } %><%= form.select :sex,options_for_select(['男','女']) %>
select_tag "people", options_from_collection_for_select(@people, "id", "name") # <select id="people" name="people"><option value="1">David</option></select> select_tag "people", options_from_collection_for_select(@people, "id", "name", "1") # <select id="people" name="people"><option value="1" selected="selected">David</option></select> select_tag "people", raw("<option>David</option>") # => <select id="people" name="people"><option>David</option></select> select_tag "count", raw("<option>1</option><option>2</option><option>3</option><option>4</option>") # => <select id="count" name="count"><option>1</option><option>2</option> # <option>3</option><option>4</option></select> select_tag "colors", raw("<option>Red</option><option>Green</option><option>Blue</option>"), multiple: true # => <select id="colors" multiple="multiple" name="colors[]"><option>Red</option> # <option>Green</option><option>Blue</option></select> select_tag "locations", raw("<option>Home</option><option selected='selected'>Work</option><option>Out</option>") # => <select id="locations" name="locations"><option>Home</option><option selected='selected'>Work</option> # <option>Out</option></select> select_tag "access", raw("<option>Read</option><option>Write</option>"), multiple: true, class: 'form_input', id: 'unique_id' # => <select class="form_input" id="unique_id" multiple="multiple" name="access[]"><option>Read</option> # <option>Write</option></select> select_tag "people", options_from_collection_for_select(@people, "id", "name"), include_blank: true # => <select id="people" name="people"><option value="" label=" "></option><option value="1">David</option></select> select_tag "people", options_from_collection_for_select(@people, "id", "name"), include_blank: "All" # => <select id="people" name="people"><option value="">All</option><option value="1">David</option></select> select_tag "people", options_from_collection_for_select(@people, "id", "name"), prompt: "Select something" # => <select id="people" name="people"><option value="">Select something</option><option value="1">David</option></select> select_tag "destination", raw("<option>NYC</option><option>Paris</option><option>Rome</option>"), disabled: true # => <select disabled="disabled" id="destination" name="destination"><option>NYC</option> # <option>Paris</option><option>Rome</option></select> select_tag "credit_card", options_for_select([ "VISA", "MasterCard" ], "MasterCard") # => <select id="credit_card" name="credit_card"><option>VISA</option> # <option selected="selected">MasterCard</option></select>