如果值存在Rails,则选择设置选择下拉列表

时间:2015-11-26 16:23:39

标签: ruby-on-rails ruby

如果数据库中存在相应的值,我试图将select值设置为selected。我在网站的多个地方以及此页面上使用过该代码,但在此页面上,其中一些工作正常,而其中一些则没有。

这是代码:

<select data-rule-required='true' data-rule-required='true' name ='op_businessdriver' class="form-control">
  <option value=''>Business Driver</option>
  <% @driver.each do | dr | %>
    <option value = '<%= dr.id %>' <% if @p.op_businessdriver == dr.id %> selected='selected' <% end %>><%= dr.driver_name %></option>
  <% end %>
</select>

@p.op_businessdriver返回1dr.id返回1,2,3,4,5。我希望选择select中的第一个选项(不包括顶部没有值的默认值)。

不知道为什么这对某些选择字段起作用,但对其他字段不起作用。

任何想法都会受到赞赏。

由于

1 个答案:

答案 0 :(得分:0)

您应该使用Rails帮助程序标记。你的代码非常混乱。

示例:

<%= select_tag :business_driver, options_from_collection_for_select(@driver, "id", "driver_name", @p.op_businessdriver.id) %>

有关详情,请查看select_tag的{​​{3}}。