Мне нужно отобразить список меток категорий из отфильтрованной коллекции, разделенных запятой в блейд-представлениях.
Код выглядит следующим образом
{{$data->categories->filter(function ($value) {return $value->type_id == 1;})->pluck(['label'])->toArray()}};
Эта ошибка возникает при использовании toArray()
htmlspecialchars () ожидает, что параметр 1 будет строкой, задан массив
Мне нужен результат в массиве, чтобы использовать его с implode для отображения списка, разделенного запятой
{{implode(', ',$data->categories->filter(function ($value) {return $value->type_id == 1;})->pluck(['label'])->toArray())}};
Ожидаемый результат для отображения:
Car, Truck, Cheap
Коллекция
[{"id":80,"type_id":1,"label":"Car","pivot":{"data_id":6060,"category_id":80}},
{"id":45,"type_id":1,"label":"Truck","pivot":{"data_id":6060,"category_id":45}},
{"id":75,"type_id":8,"label":"Cheap","pivot":{"data_id":6060,"category_id":75}}]
Если я не использую фильтр / где коллекция, я могу использовать toArray ()
Есть идеи, почему использование filter / where collection вызывает ошибку toArray ()?