Коллекции Laravel преобразуют значение ключа в ассоциативный ключ - PullRequest
1 голос
/ 20 марта 2019

Я использую эту функцию: $assets->pluck('url').

Выводит: ['link','link1','link2']

Как конвертировать в: [{url: 'link'}, {url: 'link1'}, {url: 'link2'}]

Ответы [ 3 ]

2 голосов
/ 20 марта 2019

Вы можете добавить функции к запросу отношения, чтобы вернуть только поле url.Таким образом, вы получите желаемый результат.

$assets = auth()->user()->assets()->select('url')->get();
1 голос
/ 20 марта 2019

Вы можете использовать метод сбора ->only(), чтобы указать поля, которые вы хотите вернуть:

$assets = auth()->user()
    ->assets
    ->only(['url'])
    ->all();
0 голосов
/ 20 марта 2019

Чтобы вернуть коллекцию, которая содержит только определенное поле в модели, вы можете добавить массив списка полей для извлечения в качестве параметров метода get в вашей модели

ModelName::get(['id', 'url']);

или путем передачи спискаполей как паромер к методу select

ModelName::where([...])->select('id', 'url')->get();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...