|string> */ public function rules(): array { return [ 'targetModel' => [ 'required', 'string', 'starts_with:App\\Models\\', // phpcs:ignore Generic.CodeAnalysis.UnusedFunctionParameter.FoundBeforeLastUsed function ($attribute, $value, $fail) { if (!class_exists($value)) { $fail("Le modèle spécifié n'existe pas."); return; } if (!is_subclass_of($value, \Illuminate\Database\Eloquent\Model::class)) { $fail("Le modèle spécifié n'est pas un modèle Eloquent."); } }, ], 'page' => 'required|integer|min:1', 'paginate' => 'required|integer|min:1', 'fieldName' => 'required|string|alpha_dash|max:255', ]; } /** * Get custom attributes for validator errors. * * @return array|null> */ public function attributes(): array { return [ 'targetModel' => trans('validation.custom.targetModel'), 'page' => trans('validation.custom.page'), 'paginate' => trans('validation.custom.paginate'), 'fieldName' => trans('validation.custom.fieldName'), ]; } }