П
Size: a a a
П
П
П
O
$product_positions = ProductPosition::with(['city', 'product'])->get();по идеи, оно должно зайти в таблицу regions, и получить объект city по city_id
select `cities`.*, `regions`.`id` from `cities` inner join `regions` on `regions`.`id` = `cities`.`id` where `regions`.`id` in (1)и мне кажется все ок, только б убрать
where `regions`.`id` in (1), ведь оно все портит...
O
O
$product_positions = ProductPosition::join('regions', 'product_positions.region_id','=', 'regions.id')
->join('cities', 'regions.city_id', '=', 'cities.id')
->select(['product_positions.*', 'regions.name as region_name', 'cities.name as city_name'])->paginate(15);
YP
$product_positions = ProductPosition::with(['city', 'product'])->get();по идеи, оно должно зайти в таблицу regions, и получить объект city по city_id
select `cities`.*, `regions`.`id` from `cities` inner join `regions` on `regions`.`id` = `cities`.`id` where `regions`.`id` in (1)и мне кажется все ок, только б убрать
where `regions`.`id` in (1), ведь оно все портит...
region.cities
, что проще всего), то выход есть - надо поменять порядок полей в параметрах хэсМэниСру. Как-то так:public function cities(){Все, собственно.
return $this->hasManyThrough(City::class, Region::class, 'id', 'region_id', 'region_id');
}
ProductPosition::with('cities')
должно делать то, что ты хочешь.O
region.cities
, что проще всего), то выход есть - надо поменять порядок полей в параметрах хэсМэниСру. Как-то так:public function cities(){Все, собственно.
return $this->hasManyThrough(City::class, Region::class, 'id', 'region_id', 'region_id');
}
ProductPosition::with('cities')
должно делать то, что ты хочешь.YP
O
П
П
OK
П
П
OK
П
П
П
OK