Skip to content

Latest commit

 

History

History
50 lines (39 loc) · 769 Bytes

README.md

File metadata and controls

50 lines (39 loc) · 769 Bytes

fractal

Usage

首先定义 Tranformer

<?php
namespace Transformer;

use Moment\Fractal\AbstractTransformer;

class AppTransformer extends AbstractTransformer
{
    public function transform($app)
    {
        return [
            'id' => $app->id,
            'name' => $app->name,
        ];
    }
}
<?php
namespace Controller;

use Models\App;
use FastD\Http\ServerRequest;
use Transformer\AppTransformer;
use FastD\Http\Response;

class AppsController
{
    public function show(ServerRequest $request)
    {
        $app = App::find($request->getAttribute('id'));
        
        return fractal()->item($app, AppTransformer::class, Response::HTTP_OK);
    }
}

请求后, 将输出

HTTP 200 OK
{"id": 1, "name": "testing"}