我一直致力于为我们的各种 Web 应用程序创建一个干净的界面,但我遇到了 Laravel 的 API 资源无法将传入的 json 数组正确转换为 Laravel 集合的问题。
我可以用一个资源做到这一点:
namespace App\Http\Resources;
use Illuminate\Http\Resources\Json\Resource;
use App\Product;
class ProductResource extends Resource
{
/**
* Transform the resource into an array.
*
* @param \Illuminate\Http\Request $request
* @return array
*/
public function toArray($request)
{
return [
'name' => $this->resource['product']['name'],
'description' => $this->resource['product']['description'],
'price' => $this->resource['product']['rental_rate']['price']
];
//return parent::toArray($request);
}
}
Run Code Online (Sandbox Code Playgroud)
打印此响应输出:
{"name":"Arri Skypanel S60-C","description":"Arri Sky Panel S60-C 450w input with a 2000w tungsten equivalent & Combo Stand","price":"260.0"}
Run Code Online (Sandbox Code Playgroud)
然而,试图将这个单一的项目变成一个项目的集合是行不通的。
有人知道我错过了什么吗?
拉取 …