Я с трудом нахожу голову, собирая коллекцию, которую я пытаюсь сделать.Немного предыстории: у меня есть вложенная модель, где у меня есть макет, и у каждого макета может быть заданное количество изображений.Как часть ввода, пользователь может решить, какое изображение идет в каком порядке.Это продиктовано значением layout_placement
изображения.В настоящее время это работает, layout_placement представляет собой текстовое поле, в которое пользователь может вводить и т. Д.
<%= f.fields_for :images do |builder| %>
<%= builder.file_field :image %>
<%= builder.label :layout_placement %> <%= builder.text_field :layout_placement, :size => 3%>
<br /><br />
<% end %>
Что мне нужно, так это раскрывающийся список вместо поля простого текста, который позволит мнезначение выбранного layout_placement
- оно основано на количестве доступных пробелов (каждый макет отличается и имеет от 2 до 5 слотов изображений).
У меня уже есть поле в макете, называемое image_slots
это дает мне количество доступных графических слотов для используемого макета.Поэтому я хочу, чтобы мои доступные параметры варьировались от 1 до количества слотов для изображений.Я пытаюсь сделать что-то вроде этого:
<%= builder.collection_select :layout_placement, 1..@layout.image_slots, ???, ??? %>
И я застреваю на том, что нужно пройти для :id
и :name
методов.Я попытался упростить и просто использовать select_tag
, но в этой области я нахожусь в тупике, так как это вложенная модель, настройки :object#method
идут неправильно.
Любая помощь в работе любого из вариантовбудет принята с благодарностью.