2016-05-14 82 views
1

我有三個模型品牌,類別和國家在多對多的關聯,這意味着每個品牌可能屬於很多類別,每個類別可能有很多品牌,每個國家可能有很多類別和品牌我需要知道一種方法來獲取品牌被投入的類別。ActiveRecord關聯方法獲取關聯對象

到目前爲止,我有這樣的:

@brands = Brand.includes(:categories) 

它創建品牌和類別之間的關聯,我堅持。我不知道如何獲取品牌投放的類別。你可以幫我嗎?

回答

0

創建HABTM關係。從創建新模型開始category然後創建新遷移並將其命名爲brands_categories在新遷移中添加類別和品牌的引用。如rails g migration brands_categories brand:references category:references。然後在您的brand_params中允許{:category_ids => []}, :categories_attributes => [:category]。要在您的品牌觀表格中添加一些類別這樣
<% Category.all.each do |cat| %>
<div class="checkbox">
<label>
<%= check_box_tag "product[category_ids][]", cat.id, @product.categories.include?(cat) %>
<%= cat.category %>
</label>
</div>
<% end %>