Как стремиться к загрузке нескольких отношений отношение к одной и той же таблице? - PullRequest
0 голосов
/ 15 апреля 2020

В следующей модели пользователь имеет 2x отношения с автомобилем. Оба указывают на одну и ту же таблицу, но используют другое поле (daily_car_id +kend_car_id):

class User extends Model
    public function dailyCar() {
        return $this->belongsTo(Car::class, 'daily_car_id', 'id');
    }
    public function weekendCar() {
        return $this->belongsTo(Car::class, 'weekend_car_id', 'id');
    }
}

Все это прекрасно работает, кроме быстрой загрузки:

User::with(['dailyCar', 'weekendCar'])->findOrFail($id);

Ожидается

# 10 is the weekend car id and 12 is the daily
SELECT * FROM `car` WHERE `car`.`id` in (10, 12)

Фактический результат ( неверный неожиданный)

# 10 is the weekend car id and 12 is the daily
SELECT * FROM `car` WHERE `car`.`id` in (10)
SELECT * FROM `car` WHERE `car`.`id` in (12)

Есть ли способ увеличить нагрузку при использовании множественных отношений ownTo с та же таблица?

...