['required', 'array'], ]; } public function messages(): array { return [ 'audition.required' => 'No auditions were selected', 'audition.array' => 'Invalid request format', ]; } public function withValidator($validator): void { $validator->after(function ($validator) { foreach ($this->input('audition', []) as $auditionId => $value) { if (! is_numeric($auditionId) || ! Audition::where('id', $auditionId)->exists()) { $validator->errors()->add('audition', 'One or more invalid auditions were selected'); } } }); } protected function failedValidation(Validator $validator) { $msg = $validator->errors()->get('audition')[0]; return to_route('admin.draw.index')->with('error', $msg); } }