Я использую Фрактальный трансформатор в Laravel 5.6
У меня есть модель новостей и модель пользователя. У новостной модели есть внешний ключ user_id. когда я хочу показать список новостей, я преобразую данные, как показано ниже:
public function transform(News $news)
{
return [
'identifier' => (int) $news->id,
'title' => (string) $news->title,
'content' => (string) $news->content,
'user' => (String) $news->user->f_name . " " . $news->user->l_name,
'userType' => (String) $news->user->user_type,
'likeCount' => (int) $news->likes,
];
}
И функция преобразования:
protected function transformData($data, NewsTransformer $transformer) {
$transformation = fractal($data, new $transformer);
return $transformation->toArray();
}
Теперь проблема в том, что когда я преобразую список новостей, он возвращает массив вместо сбора, и после преобразования я не могу использовать такие операции, как фильтрация данных по userType или сортировка данных по пользователю.
Так как я могу отсортировать, отфильтровать и разбить на страницы результаты по новым полям после преобразования?