Obtener Auth ID de Usuario Laravel

0

Pregunta

Hice Laravel Proyecto Y instalar la Brisa paquete de multi autenticación Y Crear una llamada de la guardia de administración para el control de usuario evaluar a panel funciona bien Aquí es la ruta

Route::get('/dashbord',[AdminController::class, 'Dashbord'])
    ->name('admin.dashbord')
    ->middleware('Admin');

Route::get('/profile/edit',[AdminProfileSettings::class, 'index'])
    ->name('admin.profile.settings')
    ->middleware('Admin');

Aquí Es el middleware

public function handle(Request $request, Closure $next)
{
    if(!Auth::guard('admin')->check()) {
        return redirect()->route('login_form')->with('error','please Login First');
    }
    return $next($request);
}

Este código funciona bien, pero el problema es que cuando me inicie sesión en el panel y tratar de obtener el ID de administrador a administrador.perfil.configuración de la ruta no lo puedo obtener el Id, pasé la registra el id de administrador mediante el uso de AdminProfileSettings controlador como este

public function index()
{
    $id=Auth::user()->id;
    $adminData = Admin::find($id);
    return view('admin.admin_profile_settings',compact('adminData'));
}

Pero, cuando intento acceder a ella en el admin.admin_profile_settings la vista me muestra este error:

Tratando de obtener la propiedad " id " de la no-objeto

Pero, si puedo usar $adminData = Admin::find(1); es obtener el Id sin ningún problema, pero cuando trato de obtener auth id de usuario me muestra el error y si me he iniciado en el uso predeterminado de la guardia este error lo puedo mostrar, pero es obtener la id desde la tabla de usuarios

authentication breeze laravel
2021-11-23 18:30:07
1

Mejor respuesta

1

Usted no está usando el auth:admin middleware, por lo que el Auth la fachada se va a tirar el usuario desde el valor predeterminado de la guardia definida en la configuración (que es weba menos que hayas cambiado).

Sin el uso de la auth:admin middleware, deberá especificar la guardia para que se obtiene el usuario.

$adminUser = Auth::guard('admin')->user();

Nota 1: si usted tiene la $request variable, también puede tirar de la sesión de usuario de la $request con $request->user()en lugar de llegar a la Auth fachada. Es sólo una cuestión de preferencia. El user() el método también tiene una guardia como parámetro, si es necesario.

$adminUser = $request->user('admin');

Nota 2: el user() método (Auth y petición) devuelve el completamente hidratado modelo. No hay necesidad de obtener el id y volver a recuperar el modelo.

2021-11-23 20:59:44

En otros idiomas

Esta página está en otros idiomas

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Slovenský
..................................................................................................................