Я делаю форму для объекта Order, а в заказе много продуктов, через таблицу соединений, называемую OrderProducts. Итак, у нас есть что-то вроде этого:
<% @order = Order.new %>
<% form_for @order do |f| %>
<% @products.each do |product| %>
... want to iterate over products here to build up "order[product_ids][]", with one checkbox per product
<% end %>
<% end %>
Обычно для каждого продукта у меня будет check_box_tag, говоря
<%= check_box_tag "order[product_ids][]", product.id, @order.product_ids.include?(product.id) %>
Но это, работая отлично, всегда чувствует себя немного полицейским. Есть ли способ сделать это с помощью синтаксиса f.check_box
? Важное замечание - в рассматриваемом проекте я работаю в Rails 2.2.2, поэтому решение, которое работает в rails 2, было бы идеальным.