这是我现在正在做的事情:
def get_counts
products = Product.all
a_count, b_count, c_count = 0, 0, 0
products.collect{ |p| a_count+=1 if p.some_attribute == 'a' }
products.collect{ |p| b_count+=1 if p.some_attribute == 'b' }
products.collect{ |p| c_count+=1 if p.some_attribute == 'c' }
return a_count, b_count, c_count
end
这对我来说感觉非常糟糕。我尝试使用注入,但无法让它按我想要的方式工作。有没有人有更好的方法来做到这一点?