我使用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等)的所有两个字母缩写
注意:我有一个位置表,地址和状态为列
答案 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'] %>
依旧......