Как зациклить коллекцию без зацикливания внутри каждого элемента? - PullRequest
0 голосов
/ 23 марта 2019

У меня есть коллекция.Для каждого элемента я хочу добавить новый атрибут [пользователи].Когда я зацикливаю коллекцию с помощью функции map или даже foreach, я замечаю, что код зацикливается внутри каждого элемента.Таким образом, каждый атрибут из элемента коллекции читается.Пожалуйста, посмотрите следующееи я думаю, это потому, что код повторяется по имени каждого элемента myCollection.

Как мне это исправить, пожалуйста?спасибо

1 Ответ

0 голосов
/ 23 марта 2019

$item содержит каждый объект коллекции, поэтому вы должны использовать соответствующий ключ.

$myCollection->map(function ($item) use($users, $role) {
   $item = Site::findOrFail($item->id); // or $item['id']
   $item->users = $users;
   return $item;
});

На самом деле, теперь, когда я посмотрел на него лучше, вам вообще не нужно искать предметснова.Таким образом, в вашем закрытии достаточно просто иметь эти две строки.

$item->users = $users;
return $item;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...