Я следовал инструкциям в Флажки Railscast # 17 HABTM (исправлено) , чтобы получить этот код для добавления сервисов в проект с использованием ассоциации has_and_belongs_to_many:
<% Service.all.each do |service| %>
<%= hidden_field_tag "project[service_ids][]", nil %>
<%= check_box_tag "project[service_ids][]", service.id, @project.service_ids.include?(service.id), id: dom_id(service) %>
<%= label_tag dom_id(service), service.name %><br />
<% end %>
Это работает правильно, но я бы хотел использовать Formtastic для генерации кода, чтобы форматирование соответствовало остальной части страницы. В видео упоминается, что Formtastic может сделать это легко, но я не могу понять код для моей жизни.
Я предполагал сделать что-то вроде этого:
<%= semantic_form_for :services do |f| %>
<%= f.input :name, :as => :check_boxes, :collection => Service.find(:all) %>
<% end %>
, и это генерирует список служб, но установка флажков ничего не делает. Я знаю, что последний кусочек кода нужно каким-то образом связать с ассоциацией projects_services, но я не знаю, как это сделать.