首页 > 解决方案 > 计算 ActiveRecord 子自定义属性的最佳方法?

问题描述

如果我有一个购物车,里面是农产品(每个农产品都有一个自定义的过期属性),计算过期属性的最佳方法是什么?-- 还有比这个count_expired 更好的方法吗?

class Cart < ActiveRecord::Base
  has_many :produce, :dependent => :delete_all

  def count_expired
    count = 0
    self.produces.each do | produce |
      if produce.expired
        count ++
      end
    end
    return count
  end
end

class Produce < ActiveRecord::Base
    belongs_to :cart, class_name: "Cart", touch: true

    def expired
        return <true or false logic>
    end
end

标签: rails-activerecord

解决方案


推荐阅读