Ich habe das Standardverfahren verwendet, das Laravel 8 bereitstellt, um sicherzustellen, dass das Passwort die Komplexitätskriterien erfüllt:
Code: Select all
protected function validator(array $data)
{
$rules = [
'first_name' => ['required', 'string', 'max:255'],
'last_name' => ['required', 'string', 'max:255'],
'email' => ['required', 'string', 'email', 'max:255', 'unique:users'],
'password' => ['required', 'string', 'confirmed', Password::min(6)->mixedCase()->letters()->numbers()->symbols()],
'password_confirmation' => ['required', 'same:password'],
'accept' => ['accepted'],
];
$messages = [
'first_name.required' => 'The "First name" field is required',
'last_name.required' => 'The "Last name" field is required',
'email.required' => 'Please provide a valid email address',
'email.email' => 'The email address you provided is not valid',
'email.unique' => 'The email address you provided is already in use',
'password.required' => 'A password is required',
'password.mixedcase' => 'Include uppercase and lowercase letters, at least one number and one symbol',
'password.letters' => 'Include uppercase and lowercase letters, at least one number and one symbol',
'password.numbers' => 'Include uppercase and lowercase letters, at least one number and one symbol',
'password.symbol' => 'Include uppercase and lowercase letters, at least one number and one symbol',
'accept.required' => 'You must accept the Terms & conditions of service'
];
return Validator::make($data, $rules, $messages);
}
Ich würde gerne alle Komplexitätskriterien in einer Nachricht „zusammenführen“ können. Statt:
Code: Select all
'password.mixedcase' => 'Include uppercase and lowercase letters, at least one number and one symbol',
'password.letters' => 'Include uppercase and lowercase letters, at least one number and one symbol',
'password.numbers' => 'Include uppercase and lowercase letters, at least one number and one symbol',
'password.symbol' => 'Include uppercase and lowercase letters, at least one number and one symbol'
Code: Select all
'password.isComplex' => 'Include uppercase and lowercase letters, at least one number and one symbol'
UPDATE
Verwendet
Code: Select all
'password.required' => 'your password required message here',
'password.*' => 'Include uppercase and lowercase letters, at least one number and one symbol'
Was ist mein Fehler?