我有两个不同的模型(Container 和 StockReceipt),我需要合并和订购它们以在表格中显示为交货。我目前正在对控制器中的记录进行排序:
stock_receipts = StockReceipt.where(:delivery_date.gt => 1.month.ago)
容器 = Container.joins(:shipment).where(:shipment => {:etd.gt => 1.month.ago})
@deliveries = (stock_receipts + 容器).sort!{|a,b| 交货日期(a)<=>交货日期(b)}
delivery_date 是一个帮助方法,根据类返回日期
它有效,但我想按供应商进行子排序(在 SQL 中:ORDER BY delivery_date,supplier_id)。我可以 group_by(delivery_date).group_by(supplier) 但这有点难看。
我想知道是否有更优雅的方法可以在 Rails 中或直接在 SQL 中执行此操作。
谢谢大家, 加姆