avertys / lighter
使您的请求更轻量
1.0.3
2020-12-14 21:52 UTC
Requires
- php: >=7.0.0
Requires (Dev)
- phpunit/phpunit: ~4.0
This package is not auto-updated.
Last update: 2024-10-02 14:44:26 UTC
README
Lighter 是一个包,可以帮助您提高请求的性能。您可以选择保留模型中的哪些数据,或者让客户端请求他所需的数据。
安装
为了安装 Lighter,只需使用 Compose
composer require "avertys/lighter"
如何使用 Lighter
在模型上
要在模型上使用 Lighter,您必须将 Avertys\Lighter\LighterTrait 添加到您的模型中
class User extends Model { use LighterTrait; protected $appends = ['fullname']; }
然后,您只需编写以下代码。在此示例中,访问器未计算。
$user = User::find(1); return response()->json( $user->lighter()->keep(['name', 'address']); , 200); /* { "name" : "Steve", "age" : "28" } */
您还可以使用助手在集合上使用 lighter。
$users = User::all(); return response()->json( lighter($users)->keep(['name', 'address']); , 200); /* { "name" : "Steve", "age" : "28" }, { "name" : "John", "age" : "35" }, */
助手可用于模型
$user = User::find(1); return response()->json( lighter($user)->keep(['name', 'address']); , 200); /* { "name" : "Steve", "age" : "28" }, { "name" : "John", "age" : "35" }, */
使用请求:让您的客户端请求所需的数据。
在参数中,添加 _keep 参数 https:///users?_keep["name"]
.
$user = User::find(1); return response()->json( lighter($user)->keep(); , 200); /* { "name" : "Steve", "age" : "28" }, { "name" : "John", "age" : "35" }, */