Laravel:拒绝验证中的空PUT请求

Laravel:拒绝验证中的空PUT请求,laravel,validation,dingo-api,Laravel,Validation,Dingo Api,Laravel 5.3的$api->resource()将映射放置请求路由到控制器的更新方法 当发出空HTTP PUT请求时,我无法触发验证错误。我的$this->validate()规则都是可选的,因为更新中不需要任何字段。 但是如果请求为空(count($request->all()==0),我真的希望验证失败 有没有一种方法可以做到这一点 '*'=>'min:1'的验证规则不起作用。我没有找到有效的内置规则,因此我注册了一个自定义规则: \Illuminate\Support\Fa

Laravel 5.3的
$api->resource()
将映射放置请求路由到控制器的
更新
方法

当发出空HTTP PUT请求时,我无法触发验证错误。我的
$this->validate()
规则都是可选的,因为更新中不需要任何字段。 但是如果请求为空(
count($request->all()==0
),我真的希望验证失败

有没有一种方法可以做到这一点


'*'=>'min:1'
的验证规则不起作用。

我没有找到有效的内置规则,因此我注册了一个自定义规则:

    \Illuminate\Support\Facades\Validator::extendImplicit(
        'requestnotempty',
        function($attribute, $value, $parameters, $validator) {
            return count($validator->getData()) !== 0;
        }
    );
然后我用它:

    $this->validate(
        $request,
        [
            '' => 'requestnotempty',
            //...
        ]
    );