我已經看過幾個關於如何在響應中刪除鍵「數據」的例子,但我無法修復它。刪除遊戲中的關鍵數據 - 分形
我試圖用由野狗提供的回調
return $this->collection($users, new UserTransformer, function ($resource, $fractal) {
$fractal->setSerializer(new ArraySerializer);
});
在變化中 「$ fractal-> setSerializer(新CustomSerializer);」到「$ fractal-> setSerializer(new ArraySerializer);」因爲我沒有CustomSerializer(以及如何製作這個自定義序列化器?),基於分形文檔array serializer,但輸出有關鍵的「數據」。
我還測試了不同項目中的分形庫,並將ArraySerializer作爲序列化程序實現,並且工作正常。
我在配置丁格 - 分形時缺少什麼?
UPDATE * 我列入config
$this->app->bind('Dingo\Api\Transformer\Adapter\Fractal', function($app) {
$fractal = $app->make('\League\Fractal\Manager');
$serializer = new \League\Fractal\Serializer\ArraySerializer();
$fractal->setSerializer($serializer);
return new \Dingo\Api\Transformer\Adapter\Fractal($fractal);
});
而且在我的控制器
$obj = \App\EloquentModel\User::find(1);
return $this->response->item($obj, new UserTransformer);
在我UserTransformer
public function transform(User $trans)
{
return [
'id' => (int) $trans->id,
'name' => $trans->name,
'description' => $trans->description
];
}
安裝應用這些東西REM爲單個項目提供了關鍵的「數據」。
{
"id": 1,
"name": "Juan",
"description": "The BOss"
}
但是,當我嘗試使它成爲一個數組。 User :: all(),響應具有「數據」鍵。
感謝。
我也嘗試這個> $這 - > APP->綁定( '野狗\阿比\變壓器\適配器\分形',函數($應用){$ 分= $ APP-> ('\ League \ Fractal \ Manager'); $ serializer = new \ League \ Fractal \ Serializer \ ArraySerializer; $ fractal-> setSerializer($ serializer); return new \ Dingo \ Api \ Transformer \ Adapter \分形($ fractal); }); – chkm8