首页 > 解决方案 > 如何在 Lumen 项目中使用 JSON API 资源?

问题描述

在 Laravel 中,它可以像这里描述的那样简单地完成:https ://laravel.com/docs/5.6/eloquent-resources 。

有人说,API 资源不适用于 Lumen。但是,仅仅为了这个问题,我想严格地知道,是否有办法在 Lumen 项目中添加 Laravel JSON API 资源(use Illuminate\Http\Resources\Json\JsonResource;新创建的 Lumen 项目中缺少该包)。

标签: phplaravellumen

解决方案


API 资源在 lumen 中可用,文件位于:vendor\illuminate\http\Resources. 缺少的是生成它们的工匠命令。所以只需手动创建文件,例如: app\Http\Resources\UserResource.php

namespace App\Http\Resources;

use Illuminate\Http\Resources\Json\JsonResource;

class UserResource extends JsonResource
{
    public function toArray($request)
    {
        return [
            'name' => $this->name,
            'email' => $this->email,
        ];
    }
}

我不知道谁说,API 资源不适合 Lumen,但事实并非如此。


推荐阅读