コード例 #1
0
 /**
  * Create Fractal Resource
  *
  * @param $data
  * @param $transformer
  * @param $model
  * @return \League\Fractal\Resource\Collection|\League\Fractal\Resource\Item
  */
 private function createResource($data, $transformer, $model)
 {
     if ($data instanceof LengthAwarePaginator) {
         $resource = new \League\Fractal\Resource\Collection($data->getCollection(), $transformer, snake_case(str_plural($model)));
         $resource->setPaginator(new IlluminatePaginatorAdapter($data));
         if (config('ember.ember-cli-pagination')) {
             $resource->setMetaValue('page', $data->currentPage());
             $resource->setMetaValue('per_page', $data->perPage());
             $resource->setMetaValue('total', $data->lastPage());
         }
         return $resource;
     } else {
         if ($data instanceof Collection) {
             return new \League\Fractal\Resource\Collection($data, $transformer, snake_case(str_plural($model)));
         }
     }
     return new \League\Fractal\Resource\Item($data, $transformer, snake_case($model));
 }