Вы можете создать первое поле со следующим:
<%= f.select :var_name, ITEMS.collect { |key, value| [key, key] } %>
Затем добавьте наблюдателя
<%= observe_field 'element_var_name',
:url => { :action => "another_action_here" },
:update => "div_tag_to_update",
:with => "'selected='+ escape($('element_var_name').value)" %>
Обязательно настройте element_var_name
и действие в вашей ситуации. Действие another_action_here
должно отображать вид следующим образом:
def call_ids_by_type
@element_list = ITEMS[param[:selected].collect { |value| [value, value] }
render :layout => false
end
Связанное представление должно содержать только поле выбора, которое вы хотите добавить. Точно не пробовал, но думаю, это должно сработать.