2015-11-03 18 views
1

我创建了产品及其变体。变体有选项大小和颜色。spree获取变体选项值

我想读取所有的变体和他们的颜色名称:

variants = product.variants_including_master.active(current_currency).includes([:option_values]) 

variants.each do |variant| 
    # here I want to read variant options color and size 
    # something like: variant.option_values['color'] 
end 

我看到互联网上的很多东西并不能得到任何东西。

回答

3

我解决了我的这种情况:

 variants = product.variants_including_master.active(current_currency).includes([:option_values]) 

     variants.each do |variant| 

     color = variant.option_values.select { |a| a.option_type.id == 2 }.first 

     if not color.nil? then 
      @product_colors << color[:name] 
     end 
     end