W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
你可以在路由或者控制器中使用 collection
方法來創(chuàng)建資源實(shí)例,以返回多個(gè)資源的集合或分頁響應(yīng):
use App\Http\Resources\User as UserResource;
use App\Models\User;
Route::get('/user', function () {
return UserResource::collection(User::all());
});
當(dāng)然了,使用如上方法你將不能添加任何附加的元數(shù)據(jù)和集合一起返回。如果你需要自定義資源集合響應(yīng),你需要?jiǎng)?chuàng)建一個(gè)專用的資源來表示集合:
php artisan make:resource UserCollection
你可以輕松地在已生成的資源集合類中定義任何你想在響應(yīng)中返回的元數(shù)據(jù):
<?php
namespace App\Http\Resources;
use Illuminate\Http\Resources\Json\ResourceCollection;
class UserCollection extends ResourceCollection
{
/**
* 將資源集合轉(zhuǎn)換成數(shù)組
*
* @param \Illuminate\Http\Request $request
* @return array
*/
public function toArray($request)
{
return [
'data' => $this->collection,
'links' => [
'self' => 'link-value',
],
];
}
}
你可以在路由或者控制器中返回已定義的資源集合:
use App\Http\Resources\UserCollection;
use App\Models\User;
Route::get('/users', function () {
return new UserCollection(User::all());
});
Copyright©2021 w3cschool編程獅|閩ICP備15016281號(hào)-3|閩公網(wǎng)安備35020302033924號(hào)
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號(hào)
聯(lián)系方式:
更多建議: