У меня проблема с просмотром списка флажков категории, когда я пытаюсь вложить их в форму fields_for.
У меня есть модель «product», которая «has_many» «photos», которая «has_and_belongs_to_many» «category».Я почти уверен, что все мои ассоциации в моих моделях правильные, так же как и моя таблица соединений для отношений «фотографии» и «категории».
Вложение только «фото» в «продукт» мне подходит:
<%= form_for(@product) do |f| %>
<div class="field">
<%= f.label :name %><br />
<%= f.text_field :name %>
</div>
<div class="field">
<% f.fields_for :photos do |builder| %>
<%= builder.label :name, "Photo name" %>
<%= builder.text_field :name %>
<% end %>
</div>
<div class="actions">
<%= f.submit %>
</div>
<% end %>
Но я не могу добавить модель категории с флажками.Вот что не работает:
<%= form_for(@product) do |f| %>
<div class="field">
<%= f.label :name %><br />
<%= f.text_field :name %>
</div>
<div class="field">
<% f.fields_for :photos do |builder| %>
<%= builder.label :name, "Photo name" %>
<%= builder.text_field :name %>
<div class="field">
Categories:
<% for category in Category.find(:all )%>
<%= check_box_tag "photo[category_ids][]", category.id, @photo.categories.include?(category) %>
<%= category.name %>
<% end %>
</div>
<% end %>
</div>
<div class="actions">
<%= f.submit %>
</div>
<% end %>
check_box_tag и отсутствие помощника по форме при циклическом просмотре списка категорий приводят меня в замешательство.Может кто-нибудь, пожалуйста, помогите?Спасибо.
ОБНОВЛЕНИЕ: я могу заставить его работать с этим блоком выбора, но я пытаюсь заставить его работать с флажками:
<%= f.collection_select :category_ids, Category.find(:all, :order => 'name'), :id, :name, {}, :multiple => true %>