Akmeh / transformer by akmeh

API Tool for transform the output easily between Laravel/Lumen API.
378
0
2
Package Data
Maintainer Username: akmeh
Package Create Date: 2018-02-12
Package Last Update: 2018-07-17
Language: PHP
License: MIT
Last Refreshed: 2024-11-23 03:10:56
Package Statistics
Total Downloads: 378
Monthly Downloads: 4
Daily Downloads: 0
Total Stars: 0
Total Watchers: 2
Total Forks: 0
Total Open Issues: 0

API Transformer

Using Laravel/Lumen as a framework and Fractal PHP League I need a fast way to create controllers giving them proper format

How to use it on your controllers

<?php
declare(strict_types=1);

namespace App\Http\Controllers;

use APITransformer\Transformer;
use App\Country;
use App\Transformers\CountryTransformer;
use Illuminate\Http\Request;
use Illuminate\Http\Response;

/**
 * Class CountriesController
 * @package App\Http\Controllers
 */
class CountriesController extends  Controller
{
    use Transformer;

    public function index(Request $request)
    {
        $collection = Country::all();
        $response = $this->transformCollection(
            $collection, new CountryTransformer(), 'countries', $request
        );

        $httpCode = $collection->count() ? Response::HTTP_OK : Response::HTTP_NO_CONTENT;
        return response()->json($response, $httpCode);
    }
}