Collection集合对象很简单时的Collection_select问题

时间:2012-12-14 19:17:24

标签: ruby ruby-on-rails-3

我正在使用RoR,我有一个StateCity对象,它有2个变量,state和city。在我看来,我有这段代码。

<%= collection_select( :state_city , :state , 
                          us_states , :id , :state_abbrev ) %>

我的收藏是由帮助器中的数组提供的。

def us_states
[
    {'state_name' => 'Alabama', 'state_abbrev' => 'AL'},
    ....
]

现在collection_set方法需要一个value_method,但如果你看到us_states,你可以告诉我真的不需要完整的模型。将应用程序的低使用率添加到应用程序中是不对的,因此可以选择状态。

P.S。我正在使用collection_select完成所有这些操作,因为我希望我的表单在用户编辑时已经选择了StateCity模型的状态。如果有人认为我走错了路,请告诉我。

1 个答案:

答案 0 :(得分:0)

解决方案是这样做。

    <%= form_for (@state_city) do |s| %>
      <div class="field">
        <%= s.label :city %><br />
        <%= s.text_field :city %>
       </div>
      <div class="field">
        <%= s.label "State" %><br />
        <%= select_tag("state", options_for_select(us_states ,@state_city.state )) %>
      </div>
    <% end %>