douchun1948 2019-03-10 16:40
浏览 109

在尝试从类请求添加输入请求时,Laravel验证始终返回false

I've got the validation return false when i added some fields to the request (hardcoded).

For more information you can see the file below (CreatePackageServiceRequest):

<?php

namespace App\Containers\Package\UI\API\Requests;

use App\Ship\Parents\Requests\Request;
use Auth;

/**
 * Class CreatePackageServiceRequest.
 */
class CreatePackageServiceRequest extends Request
{

    /**
     * The assigned Transporter for this Request
     *
     * @var string
     */
    // protected $transporter = \App\Ship\Transporters\DataTransporter::class;

    /**
     * Define which Roles and/or Permissions has access to this request.
     *
     * @var  array
     */
    protected $access = [
        'permissions' => '',
        'roles'       => '',
    ];

    /**
     * Id's that needs decoding before applying the validation rules.
     *
     * @var  array
     */
    protected $decode = [
        // 'id',
    ];

    /**
     * Defining the URL parameters (e.g, `/user/{id}`) allows applying
     * validation rules on them and allows accessing them like request data.
     *
     * @var  array
     */
    protected $urlParameters = [
        // 'id',
    ];

    /**
     * @return  array
     */
    public function rules()
    {
        $this->request->set('user_id', Auth::user()->id);
        $this->request->set('vendor_id', Auth::user()->ownedVendor->id);
        // dd($this->all()); // we've got all the input we want here

        return [
            'name'                          => 'required|max:255',
            'has_limited_number_of_event'   => 'required',
            'min_length'                    => 'required|numeric',
            'max_length'                    => 'required|numeric|min:'.($this->get('min_length') + 1),
            'max_booking'                   => 'required',
            'message_on_booking_full'       => 'required',
            'allow_choose_host'             => 'required',
            'allow_skip'                    => 'required',
            'host_name'                     => 'required',
            'allow_extra_booking'           => 'required',
            'message_no_host_available'     => 'required',
            'has_photobooth_operator'       => 'required',
            'require_photobooth_background' => 'required',
            'require_customization'         => 'required',
            'customization_title'           => 'required',
            'customization_label'           => 'required',
            'user_id'                       => 'required',
            'vendor_id'                     => 'required',
            // '{user-input}' => 'required|max:255',
        ];
    }

    /**
     * @return  bool
     */
    public function authorize()
    {
        return $this->check([
            'hasAccess',
        ]);
    }
}

When i run dd($this->all()), all input that i want is added in there. But the result of this roles/validation show that two additional fields needs to be required.

Here is the response of validation, you can see the user_id, and vendor_id below.

{
    "status": "error",
    "code": 0,
    "message": "The given data was invalid.",
    "errors": {
        "name": [
            "The name field is required."
        ],
        "has_limited_number_of_event": [
            "The has limited number of event field is required."
        ],
        "max_length": [
            "The max length must be at least 5."
        ],
        "max_booking": [
            "The max booking field is required."
        ],
        "message_on_booking_full": [
            "The message on booking full field is required."
        ],
        "allow_choose_host": [
            "The allow choose host field is required."
        ],
        "allow_skip": [
            "The allow skip field is required."
        ],
        "host_name": [
            "The host name field is required."
        ],
        "allow_extra_booking": [
            "The allow extra booking field is required."
        ],
        "message_no_host_available": [
            "The message no host available field is required."
        ],
        "has_photobooth_operator": [
            "The has photobooth operator field is required."
        ],
        "require_photobooth_background": [
            "The require photobooth background field is required."
        ],
        "require_customization": [
            "The require customization field is required."
        ],
        "customization_title": [
            "The customization title field is required."
        ],
        "customization_label": [
            "The customization label field is required."
        ],
        "user_id": [
            "The user id field is required."
        ],
        "vendor_id": [
            "The vendor id field is required."
        ]
    },
    "status_code": 422,
    "exception": "Illuminate\\Validation\\ValidationException",
    "file": "/iProject/Development/scotch.io/public/blackforest/vendor/laravel/framework/src/Illuminate/Foundation/Http/FormRequest.php",
    "line": 117,
    "trace": "Illuminate\\Validation\\ValidationException: The given data was invalid. in /iProject/Development/scotch.io/public/blackforest/vendor/laravel/framework/src/Illuminate/Foundation/Http/FormRequest.php:117
Stack trace:
#0 /iProject/Development/scotch.io/public/blackforest/vendor/laravel/framework/src/Illuminate/Validation/ValidatesWhenResolvedTrait.php(24): Illuminate\\Foundation\\Http\\FormRequest->failedValidation(Object(Illuminate\\Validation\\Validator))
#1 /iProject/Development/scotch.io/public/blackforest/vendor/laravel/framework/src/Illuminate/Foundation/Providers/FormRequestServiceProvider.php(31): Illuminate\\Foundation\\Http\\FormRequest->validateResolved()
#2 /iProject/Development/scotch.io/public/blackforest/vendor/laravel/framework/src/Illuminate/Container/Container.php(1057): Illuminate\\Foundation\\Providers\\FormRequestServiceProvider->Illuminate\\Foundation\\Providers\\{closure}(Object(App\\Containers\\Package\\UI\\API\\Requests\\CreatePackageServiceRequest), Object(Illuminate\\Foundation\\Application))
#3 /iProject/Development/scotch.io/public/blackforest/vendor/laravel/framework/src/Illuminate/Container/Container.php(1021): Illuminate\\Container\\Container->fireCallbackArray(Object(App\\Containers\\Package\\UI\\API\\Requests\\CreatePackageServiceRequest), Array)
#4 /iProject/Development/scotch.io/public/blackforest/vendor/laravel/framework/src/Illuminate/Container/Container.php(1006): Illuminate\\Container\\Container->fireAfterResolvingCallbacks('App\\\\Containers\\\\...', Object(App\\Containers\\Package\\UI\\API\\Requests\\CreatePackageServiceRequest))
#5 /iProject/Development/scotch.io/public/blackforest/vendor/laravel/framework/src/Illuminate/Container/Container.php(665): Illuminate\\Container\\Container->fireResolvingCallbacks('App\\\\Containers\\\\...', Object(App\\Containers\\Package\\UI\\API\\Requests\\CreatePackageServiceRequest))
#6 /iProject/Development/scotch.io/public/blackforest/vendor/laravel/framework/src/Illuminate/Container/Container.php(601): Illuminate\\Container\\Container->resolve('App\\\\Containers\\\\...', Array)
#7 /iProject/Development/scotch.io/public/blackforest/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(740): Illuminate\\Container\\Container->make('App\\\\Containers\\\\...', Array)
#8 /iProject/Development/scotch.io/public/blackforest/vendor/laravel/framework/src/Illuminate/Routing/RouteDependencyResolverTrait.php(79): Illuminate\\Foundation\\Application->make('App\\\\Containers\\\\...')
#9 /iProject/Development/scotch.io/public/blackforest/vendor/laravel/framework/src/Illuminate/Routing/RouteDependencyResolverTrait.php(46): Illuminate\\Routing\\ControllerDispatcher->transformDependency(Object(ReflectionParameter), Array)
#10 /iProject/Development/scotch.io/public/blackforest/vendor/laravel/framework/src/Illuminate/Routing/RouteDependencyResolverTrait.php(27): Illuminate\\Routing\\ControllerDispatcher->resolveMethodDependencies(Array, Object(ReflectionMethod))
#11 /iProject/Development/scotch.io/public/blackforest/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(41): Illuminate\\Routing\\ControllerDispatcher->resolveClassMethodDependencies(Array, Object(App\\Containers\\Package\\UI\\API\\Controllers\\Controller), 'createPackageSe...')
#12 /iProject/Development/scotch.io/public/blackforest/vendor/laravel/framework/src/Illuminate/Routing/Route.php(212): Illuminate\\Routing\\ControllerDispatcher->dispatch(Object(Illuminate\\Routing\\Route), Object(App\\Containers\\Package\\UI\\API\\Controllers\\Controller), 'createPackageSe...')
#13 /iProject/Development/scotch.io/public/blackforest/vendor/laravel/framework/src/Illuminate/Routing/Route.php(169): Illuminate\\Routing\\Route->runController()
#14 /iProject/Development/scotch.io/public/blackforest/vendor/laravel/framework/src/Illuminate/Routing/Router.php(659): Illuminate\\Routing\\Route->run()
#15 /iProject/Development/scotch.io/public/blackforest/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(30): Illuminate\\Routing\\Router->Illuminate\\Routing\\{closure}(Object(Illuminate\\Http\\Request))
#16 /iProject/Development/scotch.io/public/blackforest/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(43): Illuminate\\Routing\\Pipeline->Illuminate\\Routing\\{closure}(Object(Illuminate\\Http\\Request))
#17 /iProject/Development/scotch.io/public/blackforest/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(149): Illuminate\\Auth\\Middleware\\Authenticate->handle(Object(Illuminate\\Http\\Request), Object(Closure), 'api')
#18 /iProject/Development/scotch.io/public/blackforest/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(53): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#19 /iProject/Development/scotch.io/public/blackforest/vendor/laravel/framework/src/Illuminate/Routing/Middleware/ThrottleRequests.php(57): Illuminate\\Routing\\Pipeline->Illuminate\\Routing\\{closure}(Object(Illuminate\\Http\\Request))
#20 /iProject/Development/scotch.io/public/blackforest/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(149): Illuminate\\Routing\\Middleware\\ThrottleRequests->handle(Object(Illuminate\\Http\\Request), Object(Closure), 30, '1')
#21 /iProject/Development/scotch.io/public/blackforest/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(53): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#22 /iProject/Development/scotch.io/public/blackforest/app/Containers/Localization/Middlewares/LocalizationMiddleware.php(37): Illuminate\\Routing\\Pipeline->Illuminate\\Routing\\{closure}(Object(Illuminate\\Http\\Request))
#23 /iProject/Development/scotch.io/public/blackforest/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(149): App\\Containers\\Localization\\Middlewares\\LocalizationMiddleware->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#24 /iProject/Development/scotch.io/public/blackforest/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(53): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#25 /iProject/Development/scotch.io/public/blackforest/app/Ship/Middlewares/Http/ProfilerMiddleware.php(26): Illuminate\\Routing\\Pipeline->Illuminate\\Routing\\{closure}(Object(Illuminate\\Http\\Request))
#26 /iProject/Development/scotch.io/public/blackforest/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(149): App\\Ship\\Middlewares\\Http\\ProfilerMiddleware->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#27 /iProject/Development/scotch.io/public/blackforest/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(53): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#28 /iProject/Development/scotch.io/public/blackforest/app/Ship/Middlewares/Http/ProcessETagHeadersMiddleware.php(50): Illuminate\\Routing\\Pipeline->Illuminate\\Routing\\{closure}(Object(Illuminate\\Http\\Request))
#29 /iProject/Development/scotch.io/public/blackforest/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(149): App\\Ship\\Middlewares\\Http\\ProcessETagHeadersMiddleware->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#30 /iProject/Development/scotch.io/public/blackforest/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(53): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#31 /iProject/Development/scotch.io/public/blackforest/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(41): Illuminate\\Routing\\Pipeline->Illuminate\\Routing\\{closure}(Object(Illuminate\\Http\\Request))
#32 /iProject/Development/scotch.io/public/blackforest/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(149): Illuminate\\Routing\\Middleware\\SubstituteBindings->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#33 /iProject/Development/scotch.io/public/blackforest/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(53): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#34 /iProject/Development/scotch.io/public/blackforest/app/Ship/Middlewares/Http/ValidateJsonContent.php(41): Illuminate\\Routing\\Pipeline->Illuminate\\Routing\\{closure}(Object(Illuminate\\Http\\Request))
#35 /iProject/Development/scotch.io/public/blackforest/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(149): App\\Ship\\Middlewares\\Http\\ValidateJsonContent->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#36 /iProject/Development/scotch.io/public/blackforest/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(53): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#37 /iProject/Development/scotch.io/public/blackforest/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(102): Illuminate\\Routing\\Pipeline->Illuminate\\Routing\\{closure}(Object(Illuminate\\Http\\Request))
#38 /iProject/Development/scotch.io/public/blackforest/vendor/laravel/framework/src/Illuminate/Routing/Router.php(661): Illuminate\\Pipeline\\Pipeline->then(Object(Closure))
#39 /iProject/Development/scotch.io/public/blackforest/vendor/laravel/framework/src/Illuminate/Routing/Router.php(636): Illuminate\\Routing\\Router->runRouteWithinStack(Object(Illuminate\\Routing\\Route), Object(Illuminate\\Http\\Request))
#40 /iProject/Development/scotch.io/public/blackforest/vendor/laravel/framework/src/Illuminate/Routing/Router.php(602): Illuminate\\Routing\\Router->runRoute(Object(Illuminate\\Http\\Request), Object(Illuminate\\Routing\\Route))
#41 /iProject/Development/scotch.io/public/blackforest/vendor/laravel/framework/src/Illuminate/Routing/Router.php(591): Illuminate\\Routing\\Router->dispatchToRoute(Object(Illuminate\\Http\\Request))
#42 /iProject/Development/scotch.io/public/blackforest/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(176): Illuminate\\Routing\\Router->dispatch(Object(Illuminate\\Http\\Request))
#43 /iProject/Development/scotch.io/public/blackforest/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(30): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}(Object(Illuminate\\Http\\Request))
#44 /iProject/Development/scotch.io/public/blackforest/vendor/barryvdh/laravel-debugbar/src/Middleware/InjectDebugbar.php(58): Illuminate\\Routing\\Pipeline->Illuminate\\Routing\\{closure}(Object(Illuminate\\Http\\Request))
#45 /iProject/Development/scotch.io/public/blackforest/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(149): Barryvdh\\Debugbar\\Middleware\\InjectDebugbar->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#46 /iProject/Development/scotch.io/public/blackforest/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(53): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#47 /iProject/Development/scotch.io/public/blackforest/vendor/barryvdh/laravel-cors/src/HandleCors.php(36): Illuminate\\Routing\\Pipeline->Illuminate\\Routing\\{closure}(Object(Illuminate\\Http\\Request))
#48 /iProject/Development/scotch.io/public/blackforest/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(149): Barryvdh\\Cors\\HandleCors->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#49 /iProject/Development/scotch.io/public/blackforest/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(53): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#50 /iProject/Development/scotch.io/public/blackforest/vendor/fideloper/proxy/src/TrustProxies.php(57): Illuminate\\Routing\\Pipeline->Illuminate\\Routing\\{closure}(Object(Illuminate\\Http\\Request))
#51 /iProject/Development/scotch.io/public/blackforest/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(149): Fideloper\\Proxy\\TrustProxies->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#52 /iProject/Development/scotch.io/public/blackforest/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(53): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#53 /iProject/Development/scotch.io/public/blackforest/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(30): Illuminate\\Routing\\Pipeline->Illuminate\\Routing\\{closure}(Object(Illuminate\\Http\\Request))
#54 /iProject/Development/scotch.io/public/blackforest/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(149): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#55 /iProject/Development/scotch.io/public/blackforest/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(53): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#56 /iProject/Development/scotch.io/public/blackforest/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(30): Illuminate\\Routing\\Pipeline->Illuminate\\Routing\\{closure}(Object(Illuminate\\Http\\Request))
#57 /iProject/Development/scotch.io/public/blackforest/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(149): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#58 /iProject/Development/scotch.io/public/blackforest/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(53): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#59 /iProject/Development/scotch.io/public/blackforest/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Routing\\Pipeline->Illuminate\\Routing\\{closure}(Object(Illuminate\\Http\\Request))
#60 /iProject/Development/scotch.io/public/blackforest/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(149): Illuminate\\Foundation\\Http\\Middleware\\ValidatePostSize->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#61 /iProject/Development/scotch.io/public/blackforest/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(53): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#62 /iProject/Development/scotch.io/public/blackforest/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/CheckForMaintenanceMode.php(46): Illuminate\\Routing\\Pipeline->Illuminate\\Routing\\{closure}(Object(Illuminate\\Http\\Request))
#63 /iProject/Development/scotch.io/public/blackforest/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(149): Illuminate\\Foundation\\Http\\Middleware\\CheckForMaintenanceMode->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#64 /iProject/Development/scotch.io/public/blackforest/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(53): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#65 /iProject/Development/scotch.io/public/blackforest/app/Containers/Debugger/Middlewares/RequestsMonitorMiddleware.php(27): Illuminate\\Routing\\Pipeline->Illuminate\\Routing\\{closure}(Object(Illuminate\\Http\\Request))
#66 /iProject/Development/scotch.io/public/blackforest/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(149): App\\Containers\\Debugger\\Middlewares\\RequestsMonitorMiddleware->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#67 /iProject/Development/scotch.io/public/blackforest/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(53): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#68 /iProject/Development/scotch.io/public/blackforest/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(102): Illuminate\\Routing\\Pipeline->Illuminate\\Routing\\{closure}(Object(Illuminate\\Http\\Request))
#69 /iProject/Development/scotch.io/public/blackforest/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(151): Illuminate\\Pipeline\\Pipeline->then(Object(Closure))
#70 /iProject/Development/scotch.io/public/blackforest/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(116): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter(Object(Illuminate\\Http\\Request))
#71 /iProject/Development/scotch.io/public/blackforest/public/index.php(53): Illuminate\\Foundation\\Http\\Kernel->handle(Object(Illuminate\\Http\\Request))
#72 /Users/macbookpro/.composer/vendor/laravel/valet/server.php(151): require('/iProject/Devel...')
#73 {main}"
}
  • 写回答

1条回答 默认 最新

  • drrvnbwle80177811 2019-03-11 07:08
    关注

    base on vivek_23 answer and after surfing on the internet, i found the solution for this issue.

    we can't add the additional fields on the rules method, we need to add them in constructor.

    here is my final code.

    <?php
    
    namespace App\Containers\Package\UI\API\Requests;
    
    use App\Ship\Parents\Requests\Request;
    use Auth;
    
    /**
     * Class CreatePackageServiceRequest.
     */
    class CreatePackageServiceRequest extends Request
    {
    
        /**
         * The assigned Transporter for this Request
         *
         * @var string
         */
        // protected $transporter = \App\Ship\Transporters\DataTransporter::class;
    
        /**
         * Define which Roles and/or Permissions has access to this request.
         *
         * @var  array
         */
        protected $access = [
            'permissions' => '',
            'roles'       => '',
        ];
    
        /**
         * Id's that needs decoding before applying the validation rules.
         *
         * @var  array
         */
        protected $decode = [
            // 'id',
        ];
    
        /**
         * Defining the URL parameters (e.g, `/user/{id}`) allows applying
         * validation rules on them and allows accessing them like request data.
         *
         * @var  array
         */
        protected $urlParameters = [
            // 'id',
        ];
    
        public function __construct(\Illuminate\Http\Request $request)
        {
            $request->request->add([
                'user_id' => Auth::user()->id, 
                'vendor_id' => Auth::user()->ownedVendor->id
            ]);
        }
    
        /**
         * @return  array
         */
        public function rules()
        {
            // $this->merge([
            //     'user_id' => Auth::user()->id, 
            //     'vendor_id' => Auth::user()->ownedVendor->id
            // ]);
    
            // dd($this->all());
    
            return [
                'name'                          => 'required|max:255',
                'has_limited_number_of_event'   => 'required',
                'min_length'                    => 'required|numeric',
                'max_length'                    => 'required|numeric|min:'.($this->get('min_length') + 1),
                'max_booking'                   => 'required',
                'message_on_booking_full'       => 'required',
                'allow_choose_host'             => 'required',
                'allow_skip'                    => 'required',
                'host_name'                     => 'required',
                'allow_extra_booking'           => 'required',
                'message_no_host_available'     => 'required',
                'has_photobooth_operator'       => 'required',
                'require_photobooth_background' => 'required',
                'require_customization'         => 'required',
                'customization_title'           => 'required',
                'customization_label'           => 'required',
                'user_id'                       => 'required',
                'vendor_id'                     => 'required',
                // '{user-input}' => 'required|max:255',
            ];
        }
    
        /**
         * @return  bool
         */
        public function authorize()
        {
            return $this->check([
                'hasAccess',
            ]);
        }
    }
    

    thanks.

    评论

报告相同问题?

悬赏问题

  • ¥100 set_link_state
  • ¥15 虚幻5 UE美术毛发渲染
  • ¥15 CVRP 图论 物流运输优化
  • ¥15 Tableau online 嵌入ppt失败
  • ¥100 支付宝网页转账系统不识别账号
  • ¥15 基于单片机的靶位控制系统
  • ¥15 真我手机蓝牙传输进度消息被关闭了,怎么打开?(关键词-消息通知)
  • ¥15 装 pytorch 的时候出了好多问题,遇到这种情况怎么处理?
  • ¥20 IOS游览器某宝手机网页版自动立即购买JavaScript脚本
  • ¥15 手机接入宽带网线,如何释放宽带全部速度