Как сделать флажки для has_many: через ассоциацию, используя построитель форм? - PullRequest
2 голосов
/ 18 марта 2011

Хотите сделать чекбоксы для has_many: through.Railscast в 2007 году рекомендует следующее: check_box_tag "product [category_ids] []", category.id, @ product.categories.include? (Category).Это все еще актуально или есть более естественный способ использовать form_for для этого в рельсах 3?

1 Ответ

2 голосов
/ 18 марта 2011

Моя рекомендация - проверить драгоценный камень Джастина Френта: 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 %>

Гораздо проще, чем перебирать и использовать тег флажка.

Как только ты идешь в форму, ты никогда не возвращаешься.

...