W3Cschool
恭喜您成為首批注冊(cè)用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
技巧:這是對(duì)資源和資源集合的高度概述。強(qiáng)烈建議你閱讀本文檔的其他部分,以深入了解如何更好地自定義和使用資源。
在深入了解如何定制化編寫(xiě)你的資源之前,讓我們先來(lái)看看在 Laravel 中如何使用資源。一個(gè)資源類(lèi)表示一個(gè)單一模型需要被轉(zhuǎn)換成 JSON 格式。例如,現(xiàn)在我們有一個(gè)簡(jiǎn)單的 User
資源類(lèi):
<?php
namespace App\Http\Resources;
use Illuminate\Http\Resources\Json\JsonResource;
class User extends JsonResource
{
/**
* 將資源轉(zhuǎn)換成數(shù)組
*
* @param \Illuminate\Http\Request $request
* @return array
*/
public function toArray($request)
{
return [
'id' => $this->id,
'name' => $this->name,
'email' => $this->email,
'created_at' => $this->created_at,
'updated_at' => $this->updated_at,
];
}
}
每一個(gè)資源類(lèi)都定義了一個(gè) toArray
方法,在發(fā)送響應(yīng)時(shí)它會(huì)返回應(yīng)該被轉(zhuǎn)化成 JSON 的屬性數(shù)組。注意在這里我們可以直接使用 $this
變量來(lái)訪問(wèn)模型屬性。這是因?yàn)橘Y源類(lèi)將自動(dòng)代理屬性和方法到底層模型以方便訪問(wèn)。你可以在路由或控制器中返回已定義的資源:
use App\Http\Resources\User as UserResource;
use App\Models\User;
Route::get('/user', function () {
return new UserResource(User::find(1));
});
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)系方式:
更多建議: