В Laravel для сохранения данных о другой сущности при выполнении процедуры авторизации можно воспользоваться множеством подходов. Вот один из них:
1. Создайте миграцию для добавления необходимых полей в таблицу "users" (если еще этого не было сделано). Например, поле "doctor_id" для записи идентификатора авторизованного доктора:
```php
php artisan make:migration add_doctor_id_to_users --table=users
```
2. В файле миграции добавьте новое поле в таблицу "users":
```php
public function up()
{
Schema::table('users', function (Blueprint $table) {
$table->unsignedBigInteger('doctor_id')->nullable();
$table->foreign('doctor_id')->references('id')->on('doctors');
});
}
```
3. Выполните миграцию:
```php
php artisan migrate
```
4. В контроллере, где происходит проверка и авторизация после успешного кода СМС, сохраните модель "Doctors" в поле "doctor_id" пользователя:
```php
use Illuminate\Support\Facades\Auth;
public function verify(Request $request)
{
// Проверка кода СМС и другие действия...
// Получение модели "Doctors" по идентификатору
$doctor = Doctors::find($doctorId);
// Авторизация пользователя
Auth::login($user);
// Сохранение id доктора в поле пользователя
Auth::user()->doctor_id = $doctor->id;
Auth::user()->save();
// Дополнительные действия...
// Перенаправление пользователя на нужную страницу
return redirect('/dashboard');
}
```
Теперь вы можете получить доступ к модели "Doctors" авторизованного пользователя, обратившись к полю "doctor_id" его модели.