Ruby on rails 如何设置f.select rails的默认值

Ruby on rails 如何设置f.select rails的默认值,ruby-on-rails,simple-form,Ruby On Rails,Simple Form,我正在尝试使用以下代码设置默认值。未设置默认值。这有什么问题 = f.select(:on,Admin::DispatcherCondition.ons.collect {|p| [ p[0].humanize, p[0] ] },{default: @admin_dispatcher.on},{class: "form-control chosen-select"}) %td = f.select(:condition_type, Admin::DispatcherCondition.

我正在尝试使用以下代码设置默认值。未设置默认值。这有什么问题

  = f.select(:on,Admin::DispatcherCondition.ons.collect {|p| [ p[0].humanize, p[0] ] },{default: @admin_dispatcher.on},{class: "form-control chosen-select"})
%td
  = f.select(:condition_type, Admin::DispatcherCondition.condition_types.collect {|p| [ p[0].humanize, p[0] ] },{:selected=> @admin_dispatcher.condition_type},{class: "form-control chosen-select"})
试试这个

= f.select(:on,options_for_select(Admin::DispatcherCondition.ons.collect {|p| [ p[0].humanize, p[0] ] }, f.object.on),{},{class: "form-control chosen-select"})
p[0]
必须包含一个在上有
@admin\u dispatcher.on的值,才能选择默认值


这一点我刚刚尝试过。

您有两个
选项
。对于这两个选项,
默认值
没有设置?对于这两个选项,都没有设置。当您使用
simple\u form
时,尝试将它们作为
f.input
而不是
f.select
。尝试过了。。。它不起作用。您可以尝试在视图中的实例中将on的值设置为您想要的默认值……显然@admin\u dispatcher是错误的。我犯了一个愚蠢的错误。我需要它类似于
@admin\u dispatcher.dispatcher\u conditions.pull(:on)
。我使用PULLC是因为该查询将返回多个
dispatcher\u条件
。所以这还是不行。