我写了一个这样的 SQL:
Order.joins(:products).where.not(products: { user: current_user }, user: current_user)
意思就是,我想找一批订单,但是这个订单不是当前用户创建的,并且这个订单下的产品也不是用户创建的。
这个代码这么一看是没有问题的,但是运行起来我就发现我哪里写的有问题。
因为这样写的话,如果一个 Order 下是没有 products 的,它也不会显示。
而我希望的是,Order 下没有 Products 的,显示,同时如果 Order 里有 Products 的话,那么就需要判断 user 这个,不知道这个 SQL 应该怎么写比较好呢?