我想选择所有在两个日期之间创建订单的订单项(订单包含列日期)
这就是我想要做的事情
LineItem.where(:product_id => self.id).joins(:order).where(:orders => {"date > ? and date < ?", date_start, date_end}).all
我无法弄清楚最后一个条件的语法...... 我知道这种工作在哪里:
.where("date > ? and date < ?", date_start, date_end)
还有这样的地方:
.where(:orders => {:id => 23043})
但我怎么能混合这两种,所以我可以得到类似第一个请求的东西?
答案 0 :(得分:5)
试试这个
.where(:date => date_start..date_end, :order => {:id => 23043})
答案 1 :(得分:2)
您可以将子句链接在一起,它会自动将它们与AND:
连接起来.where("date > ? and date < ?", date_start, date_end).
where(:orders => {:id => 23043})