Дополнительное поле при регистрации Breeze
Частый случай - нужно ещё поле,
например телефон. Breeze это
не запрещает: правите миграцию
(или новую), модель, форму
и RegisteredUserController.
Краткий план:
-
Колонка в
users, напримерphone. -
Поле в
register.blade.php. -
Правило валидации и запись
в
storeконтроллера. -
Поле в
$fillableмоделиUser.
Валидация и создание пользователя:
<?php
$request->validate([
'name' => ['required', 'string', 'max:255'],
'email' => ['required', 'string', 'email', 'max:255', 'unique:'.User::class],
'phone' => ['required', 'string', 'max:20'],
'password' => ['required', 'confirmed', Rules\Password::defaults()],
]);
$user = User::create([
'name' => $request->name,
'email' => $request->email,
'phone' => $request->phone,
'password' => Hash::make($request->password),
]);
?>
В форме регистрации:
<div>
<x-input-label for="phone" :value="__('Phone')" />
<x-text-input id="phone" class="block mt-1 w-full" type="text" name="phone" :value="old('phone')" required />
<x-input-error :messages="$errors->get('phone')" class="mt-2" />
</div>
Добавьте колонку phone
в users и в
$fillable.
Добавьте поле в форму
регистрации и сохраните
его в store.