check(); } /** * Prepare the data for validation. * * @return void */ public function prepareForValidation() { parent::prepareForValidation(); $this->merge([ 'question_id' => intval($this->input('question_id')), 'answers' => collect($this->input('answers'))->map(function (string $value) { return intval($value); })->toArray(), ]); } /** * Get the validation rules that apply to the request. * * @return array */ public function rules(): array { return array_merge(parent::rules(), [ 'email' => [ 'required', 'email:rfc,strict,dns,spoof,filter', Rule::unique('users', 'email')->ignore(\optional($this->route('user'))->getRouteKey()) ], 'password' => 'nullable', 'question_id' => 'required|integer', 'answers' => 'present|array', 'answers.*' => 'integer|min:0', ]); } }