akmeh / api-transformer
Laravel/Lumen API 输出转换的 API 工具。
0.1.0
2018-07-17 12:20 UTC
Requires
- php: >=7.1.13
- illuminate/database: ^5.6
- illuminate/http: ^5.6
- illuminate/support: ^5.6
- league/fractal: ^0.17.0
Requires (Dev)
- codeception/codeception: ^2.4
- codeception/mockery-module: ^0.2.2
- fzaninotto/faker: ~1.4
- mockery/mockery: ~0.9.8
This package is not auto-updated.
Last update: 2024-09-19 17:51:40 UTC
README
使用 Laravel/Lumen 作为框架和 Fractal PHP League,需要一个快速的方法来创建控制器并给予它们适当的格式。
如何在控制器中使用它
<?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);
}
}