У меня есть таблица заказов, которая содержит 2 столбца, user_id и unregistered_address. Один из столбцов должен быть пустым, так как пользователь может быть зарегистрирован по адресу или незарегистрирован и имеет только детали адреса.
И user.address, и unregistered_address связаны с городом. (user.address.city & unregistered_address.city)
Я хочу получить заказы для определенных c городов, как для зарегистрированных, так и для незарегистрированных пользователей. Я использую eloquent для whereHas, но кажется, что когда один из двух столбцов пуст, я не получаю результатов. Это мой код:
$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();
Кто-нибудь может помочь? спасибо.