Хотите установить флажки для has_many :through. Railscast в 2007 году рекомендует это: check_box_tag "product[category_ids][]", category.id, @product.categories.include?(category). Это все еще актуально или есть более естественный способ использовать form_for для этого в rails 3?
Как установить флажки для ассоциации has_many :through с помощью построителя форм?
Ответы (1)
Я рекомендую проверить жемчужину Formtastic Джастина Френча: https://github.com/justinfrench/formtastic
Это делает работу с формами в рельсах очень простой и интуитивно понятной.
Ваша форма может выглядеть так:
<%= semantic_form_for @product do |f| %>
<%= f.inputs do |f| %>
<%= f.input :name %>
<%= f.input :categories, :as => :check_boxes, :collection => Categories.all %>
<% end %>
<%= f.buttons %>
<% end %>
Гораздо проще, чем зацикливаться и использовать тег флажка.
Как только вы станете формирующими, вы никогда не вернетесь назад.
person
Alan Peabody
schedule
18.03.2011