2013-10-04 2 views
1

Как я могу отсортировать категории по их разделам?Как сортировать категории по разделам

Как в разделе «Языки» есть английский, арабский, испанский и т. Д. Я хочу отображать названия разделов в виде заголовков и их категорий как флажков. Вот мой код.

приложение/модели/profile.rb

class Profile < ActiveRecord::Base 
    has_many :categorizations 
    has_many :categories, through: :categorizations 
end 

приложение/модели/category.rb

class category < ActiveRecord::Base 
    belongs_to :section 
    has_many :categorizations 
    has_many :profiles, through: :categorizations 
end 

приложение/модели/section.rb

class Section < ActiveRecord::Base 
    has_many :categories 
end 

приложение/просмотров/профили/_form.html.rb

<div class="field"> 
    <%= hidden_field_tag "profile[category_ids][]", nil %> 
    <% Category.all.each do |category| %> 
    <%= check_box_tag "profile[category_ids][]", category.id, @profile.category_ids.include?(category.id), id: dom_id(category) %> 
    <%= label_tag dom_id(category), category.name %><br> 
    <% end %> 
</div> 
+0

Спасибо Джеймс, я буду следовать вашему обновленному стилю, чтобы отправлять вопросы. – Murtza

ответ

0

Раздел должны быть критерии Outter итерации, если вы хотите отсортировать категории по секции. Попробуйте ниже фрагмент.

<% Section.all.each do |section| %> 
    <% section.categories.each do |category| %> 
     <%= check_box_tag "profile[category_ids][]", category.id, @profile.category_ids.include?(category.id), id: dom_id(category) %> 
     <%= label_tag dom_id(category), category.name %><br> 
    <% end %> 
<% end %> 
Смежные вопросы