选择框不显示所选值

时间:2018-08-21 15:25:36

标签: ruby-on-rails

我有一个像这样的选择框,它可以工作并保存在数据库中,但是刷新页面后,所选值不会显示为所选状态。有什么建议吗?

.col-md-6
  %span.label.label-purple{:style => "pointer-events: none; font-size: 14px"} Country Default
  = select_tag :country_default, options_for_select(Location.where(loc_type: "country").map { |country| [country.name, country.loc_code] }),
                                                style: "margin-top: 11px;",
                                                include_blank: "",
                                                class: "country-default select2", data: { select: "select2"}

2 个答案:

答案 0 :(得分:0)

像这样使用collection_select代替select_tag

=collection_select :country, :default, Location.where(loc_type: "country"), :loc_code, :name,
  {include_blank: '', selected: 'select2' },
  {class: 'country-default select2', style: 'margin-top: 11px;'}

另一个选项是使用select生成选择框。 请参见Action View Helpers指南

答案 1 :(得分:0)

options_for_select有一个可选的第二个参数,如果选择了该参数,它将显示您选择的选项。

...options_for_select(Location.where(loc_type: "country").map { |country| 
[country.name, 
country.loc_code]}, @YOURMODEL.country_default)...