Rails4 - 将相同的订单组合成批次

时间:2014-04-16 10:25:28

标签: ruby-on-rails ruby-on-rails-4

我需要一些建筑建议。我有一个订购系统。我的用户可以订购各种产品。每个订单只能有一种产品,但数量可能不同。现在订单Feed看起来像这样:

Order 1 - Product#1 - Qty: 5, created_at: 01/01
Order 2 - Product#5 - Qty: 12, created_at: 01/02
Order 3 - Product#7 - Qty: 1, created_at: 01/05

但是,当用户在不同时间订购几个相同的产品时,该列表看起来有点像

*Order 1 - Product#1 - Qty: 1, created_at: 01/01
 Order 2 - Product#5 - Qty: 12, created_at: 01/03
*Order 3 - Product#1 - Qty: 3, created_at: 01/05

这会在我的视图中产生不必要的重复(有时管理员必须多次调用才能订购东西)而且我正在努力弄清楚如何将这些订单组合成批处理,所以我会得到这样的东西:

*Order 1,3 - Product#1 - Qty: 4 (1+3), created_at: 01/01, 01/05
 Order 2 - Product#5 - Qty: 12, created_at: 01/03

很想听到一些建议

1 个答案:

答案 0 :(得分:0)

我会按照product_id订购的订单加入产品。 如果product_id发生变化,我会遍历集合并显示一行。

这样,整个报告可以使用单个查询而不是1 + n查询来完成。 :)