Laravel 8 包裹嵌套資源

2021-07-19 11:47 更新

你可以完全自由地決定資源關(guān)聯(lián)如何被包裹。如果你希望無論怎樣嵌套,都將所有資源集合包裹在 data 鍵中,那么你需要為每個資源都定義一個資源集合類,并將返回的集合包裹在 data 鍵中。

當然,你可能會擔心這樣頂層資源將會被包裹在兩個 data 鍵中。請放心,Laravel 將永遠不會讓你的資源被雙層包裹,因此你不必擔心被轉(zhuǎn)換的資源集合會被多重嵌套:

<?php

namespace App\Http\Resources;

use Illuminate\Http\Resources\Json\ResourceCollection;

class CommentsCollection extends ResourceCollection
{
    /**
     * 將資源集合轉(zhuǎn)換成數(shù)組
     *
     * @param  \Illuminate\Http\Request  $request
     * @return array
     */
    public function toArray($request)
    {
        return ['data' => $this->collection];
    }
} 
以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號