вернуть 1 столбец из отношения в 1 массиве - PullRequest
0 голосов
/ 24 февраля 2019

всем, мне нужно возвращать только imagePath в изображениях в 1 массив, а не объекты имеют много связей, любые идеи

    $albums_category = AlbumCategory::with('albums.images')->find($id);

1 Ответ

0 голосов
/ 24 февраля 2019

Вы можете сделать:

$album = AlbumCategory::with('images')->find($id);

$imagePaths = $album->images->pluck('imagePath');

или, если у вас есть вложенное отношение, то:

$album = AlbumCategory::with('albums.images')->find($id);
$imagemapths = [];

$album->albums->each(function($album) use($imagemapths){

    return array_merge($album->images->pluck('imagePath'), $imagemapths);
});

Однако, если вы выбираете только один столбец, лучше просто выбрать его иИзбегайте выбора столбцов из базы данных, которая вам не нужна.Таким образом, вы можете сделать:

$album = AlbumCategory::with('albums.images:id,imagepath')->find($id);

или подобное, используя :foreign_key,column_to_select в зависимости от структуры вашего стола.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...