Список возможных вариантов выбора в поле выбора не сохраняется при отправке формы, отправляются только выбранные параметры.
Единственный способ отправить список опций в поле выбора на момент отправки - добавить / удалить скрытые теги, перечисляющие варианты выбора / значения.
Если вы обновляете элемент select DOM, добавляя дочерние опции с Javascript, вам не нужно идти дальше. Просто используйте JavaScript, который добавляет или удаляет параметр в / из списка, добавляет или удаляет скрытые поля в / из формы.
IE:
Принимая форму, созданную этим частичным:
<% from_for @user do |f| %>
<%=f.collection_select :selected_values, Values.all, :id, :name %>
<% Values.all.each do |v| %>
<%= hidden_field_tag "user[select_options][#{v.name}]", v.id %>
<% end %>
<%= link_to_function "Add Twenty option",
'$("select").insert(bottom: "<option value=\"20\">twenty</option>");
$("form").insert(bottom: "<input type="hidden\" id=\"user_select_options_twenty\"
name=\"user[select_options][twenty]\" value=\"20\">"'
%>
<%= link_to_function "Remove Twenty option",
'$("select").select(\'[value="twenty"]\').remove();
$("#user_select_options_twenty").remove()'
%>
Предполагая, что вы заполняете скрытые значения для начального оператора выбора на странице, загружаете его при отправке, params [: user] [: select_options] будет содержать хэш всех доступных опций выбора. Ключи в этом хэше - это показанные параметры, а значения хэша - это значения этих опций выбора.
Примечание: опубликованный код не проверен. Возможно, это не правильно, но этого должно быть достаточно, чтобы поставить вас на правильный путь.