目前,我有一个下拉列表(<options>
),它正在撤回数据库中的状态列表,我希望第一个下拉列表出现并在第一个下拉列表后提供与该状态相关的城市列表被选中。
以下是我希望提供一些澄清的文件样本:
模型/ states.rb:
class States < ActiveRecord::Base
has_many :cities
end
模型/ cities.rb:
class City < ActiveRecord::Base
belongs_to :state
# States are referenced by table column state_id
end
在我正在使用的视图中,我有这个:
<div class="field">
<%= f.label :state_id %><br>
<%= select(:city, :state_id, State.all.collect {|c| [c.name, c.id]}, {prompt: "Select state"}) %>
</div>
但当然这只会填充第一个下拉列表。有没有简单的方法可以使用任何Ruby on Rails助手来实现我的目标?或者我是否必须使用ajax和jquery?