Usuario:ManuelRomero/Laravel/autentificacion/fortifyWithInertia
De WikiEducator
< Usuario:ManuelRomero | Laravel | autentificacion
Revisión a fecha de 08:03 12 nov 2022; ManuelRomero (Discusión | contribuciones)
Contenido
Referencias Web
- Instalación básica (ver wikis anteriores)
https://jetstream.laravel.com/2.x/features/authentication.html https://laravel.com/docs/9.x/fortify |
https://aprendible.com/series/autenticacion/lecciones/laravel-ui-breeze-fortify-jetstream-sanctum-y-passport |
- Tengo un problema con redirect, aquí una posible solución
Pasos básicos
- Instalamos
laravel new auth-inertia --jet
Tip: Seleccionamos Inertia y opciones por defecto
Tip: El terminal queda ejecutando vite para el cliente, abrimos otro para el shell
- Fortity, ya viene instalado junto con el paquete de jetstream, por lo que no hay que instalarlo de forma explícita. La información para la instalación de fortity https://laravel.com/docs/9.x/fortify
- Actualizamos el fichero .env para la conexión a la base de datos
- Ejecutamos las migraciones que ya vienen creadas en la instalación
php artisan migrate
Qué tenemos
- Controladores
- Vistas
- Modelos (base de datos)
Cómo personalizarlo
|
Cómo interactúan y cómo personalizarlo
- Creo una aplicación
laravel new auth --jet
- Modificando la tabla donde vamos a guardar datos de logueo
1.- Creo la tabla donde quiero hacer el logueo
Schema::create('alumnos', function (Blueprint $table) { $table->id(); $table->string('name'); $table->string('email')->unique(); $table->timestamp('email_verified_at')->nullable(); $table->string('password'); $table->rememberToken(); $table->foreignId('current_team_id')->nullable(); $table->string('profile_photo_path', 2048)->nullable(); $table->timestamps(); });
- Creo dicho modelo que tiene que ser Authenticatable (lo mejor para probarlo, copiarlo del modelo user
- Modifico en config/auth.php el modelo que vamos a utilizar para la autenticacion
'providers' => [ 'users' => [ 'driver' => 'eloquent', 'model' => App\Models\Alumno::class, ],
- Si quiero que al registrar se guarde sobre esta tabla, he de modificar app/Action/Fortity/CreateNewUser.php, creando la nueva tupla sobre el modelo especificado, en este caso Alumno, en lugar de User.
- Creamos el modelo sobre el que queremos hacer el logueo
- Estableciendo el campo sobre el que queremos establecer la autenticación
- Escribiendo las vistas
- Redirigiendo una vez logueado o estableciendo mensaje de error
- Controlando los datos del model