与has_many关联的祖先宝石



我有一个Items表和一个具有has_many关联的关联ItemPrices表设置。ItemPrices表还有一个tier_id字段。

所以结构基本上是

Item                      ItemPrices
---------                 ------------
id                        id
ancestry                  item_id
title                     tier_id
                          price

Items表的设置与has_arcestry一样,并且运行良好。

如何获取项目价格在某一层中的项目层次结构?

它必须是这样的:

商品型号:

 has_ancestry
 has_many :item_prices
 def self.tree_with_certain_tier(tier_id)
    scoped.includes(:item_prices).collect{|item| item.item_prices.with_certain_tier(tier_id)}.arrange
 end

项目价格模型:

 belongs_to :item
 scope :with_certain_tier, lambda {|tier_id| where(:tier_id=>tier_id) }

现在你只需要就可以获得你需要的东西

Item.tree_with_certain_tier(pass_certain_tier_id_here)

我没有检查这个,但它必须是正确的(或者至少指向正确的方向)

询问是否有不清楚的地方,否则你会得到任何错误。当然我们会很快修复它们

相关内容

  • 没有找到相关文章

最新更新