雄辩地使用or

时间:2020-05-03 10:17:54

标签: laravel eloquent conditional-statements

我有一个订单表,其中包含2列,user_id和unregistered_address。列之一必须为空,因为用户可以使用地址注册,也可以不注册,只包含地址详细信息。

user.address和unregistered_address都链接到城市。 (user.address.city和unregistered_address.city)

我想获取特定城市的注册用户和未注册用户的订单。我正在使用雄辩的wherehas,但似乎当两列之一为null时,我没有任何结果。这是我的代码:

 $orders = Order::whereHas('user.address', function($query) use ($cityIds){
                 $query->whereIn('city_id', $cityIds);
         })
         ->whereHas('unregisteredAddress', function ($query) use ($cityIds){
                 $query->whereIn('city_id', $cityIds);
        })-> with(['user.address','unregisteredAddress'])->get();

有人可以帮忙吗?谢谢。

0 个答案:

没有答案