/** * @param Model $item * @param array $relations * @return array */ protected function modelAsArrayWith($item, $relations) { $result = $item->as_array(); if (count($relations)) { foreach ($relations as $rel) { /** @var BaseModel $related */ $related = $item->{$rel}; $result[$rel] = $related->find_all()->as_array(true); } } return $result; }