coderscantina / laravel-transform-requests
一个表单请求包装器,用于对传入的请求应用转换
v1.0.0
2023-07-22 19:59 UTC
Requires
- php: ^8.0
- laravel/framework: ^7.0||^8.0||^9.0||^10.0
Requires (Dev)
- phpunit/phpunit: ~8.0||~9.0
README
一个表单请求包装器,用于对传入的请求应用转换
特性
- 使用
TransformRequest
指定一组键替换 - 使用
ApiRequest
将所有输入从 camelCase 转换为 snake_case
入门
- 安装此包
安装
使用 composer 需要此包
$ composer require coderscantina/laravel-transform-requests
用法
定义一个新的 ApiRequest
<?php namespace App; use Neon\Request\ApiRequest; class TestApiRequest extends ApiRequest { }
定义一个新的 TransformRequest
- 重写
$transform
字段以定义您的转换 - 为了进一步自定义转换,重写
getTransform
<?php namespace App; use Neon\Request\TransformRequest; class TestTransformRequest extends TransformRequest { protected $transform = [ 'foo_bar' => 'fooBar', ]; }
在您的应用程序中,像使用任何其他请求一样使用请求
curl -X POST -d '{"fooBar": "baz"}' https:///
<?php class TestController extends \Illuminate\Routing\Controller { public function a(TestTransformRequest $request) { $request->get('foo_bar'); // 'baz' $request->all(); // -> ['foo_bar' => 'baz'] } public function b(TestApiRequest $request) { $request->get('foo_bar'); // 'baz' $request->all(); // -> ['foo_bar' => 'baz'] } }
测试
$ composer test