Ruby on rails 使用rails还原select2 4.0.3的保存/初始值
我正在使用select2版本4.0.3 下面是我使用selecttagrails助手的htmlRuby on rails 使用rails还原select2 4.0.3的保存/初始值,ruby-on-rails,ajax,coffeescript,select2,Ruby On Rails,Ajax,Coffeescript,Select2,我正在使用select2版本4.0.3 下面是我使用selecttagrails助手的html <%= f.select(:hotel_id, [], {}, :class => 'select2-autocomplete' ) %> 以前它使用initSelection来选择3.5.3版的select2,但是4.0.3版有一些变化,我确实读了,但是仍然没有好的结果 我的问题是,当用户编辑页面时,我需要还原以前的选择值并显示它。最后,在下面的一些尝试和错误之后,如何使用se
<%= f.select(:hotel_id, [], {}, :class => 'select2-autocomplete' ) %>
以前它使用initSelection来选择3.5.3版的select2,但是4.0.3版有一些变化,我确实读了,但是仍然没有好的结果
我的问题是,当用户编辑页面时,我需要还原以前的选择值并显示它。最后,在下面的一些尝试和错误之后,如何使用select2版本4还原该值,它可能不干净,但可以工作
<% if f.object.persisted? && f.object.hotel_id %>
<% if f.object.hotel_id > 0 %>
<% value = f.object.hotel_id %>
<% text = Hotel.find(value).name %>
<% end %>
<% end %>
<%= f.select(:hotel_id, options_for_select([["#{text}", value.to_s]]), {selected: value}, :class => 'select2-autocomplete' ) %>
0 %>
“选择2自动完成”)%%>
关键的答案是底线
- 使用f.select
- 使用选项\u为\u选择生成选项
- 确保该选项使用字符串value.to\s
- 在选项下使用{selected:value}
<% if f.object.persisted? && f.object.hotel_id %>
<% if f.object.hotel_id > 0 %>
<% value = f.object.hotel_id %>
<% text = Hotel.find(value).name %>
<% end %>
<% end %>
<%= f.select(:hotel_id, options_for_select([["#{text}", value.to_s]]), {selected: value}, :class => 'select2-autocomplete' ) %>