使用SimpleForm在Dropdown中有多个选项

时间:2014-04-04 19:03:52

标签: html ruby-on-rails forms simple-form

我使用Ruby on Rails并尝试添加一个仅包含指定选项的下拉表单,这些选项是状态。

到目前为止,我有以下内容:

<%= simple_form_for @location do |f| %>
    <%= f.input :address  %>
    <%= f.input :state  %>
    <%= f.button :submit, "Add Location"  %>
  <% end %>

但是,我想添加类似

的内容
    <%= f.input :state  %>

但仅允许美国所有州(AL,AK,AZ等)的所有两个字母缩写

注意:我有一个位置表,地址和状态为列

2 个答案:

答案 0 :(得分:1)

如果您想根据表状态

获得dinamyic值,那么您需要这个

* *表

 |states|
    |id| |name|
      1   ALASKA
      2   AK
      3   AZ

* *在您的控制器中:

  @states: State.all

* *在您的观点中:

 States: 
 <%= f.select "states",options_for_select(@states.collect {|t| [t.name.to_s ,t.id]}, params[:states].to_i ) %>

如果你想要静态值,你应该尝试:

<%= f.input :state, collection: ['AL', 'AK', 'AZ'] %> 

答案 1 :(得分:0)

好的,想通了:

<%= f.input :state, collection: ['AL', 'AK', 'AZ'] %> 

依旧......