Laravel 8 desde cero Parte I - Primeros pasos
Conocimientos mínimos para modificaciones en Laravel
Requisitos previos antes de instalar laravel
Configuraciones en Windows para el correcto funcionamiento de Composer y NodeJS.
C:\ProgramData\ComposerSetup\bin
C:\Users\NameUser\AppData\Roaming\Composer\vendor\bin
Instalación y creación del proyecto en Laravel
Instalación
Creación del proyecto en Laravel
Por lo cual el auth se usa para proyectos que requieran registro, y/o zonas seguras, generalmente según el roll del usuario.
Sin embargo aún cuando no se necesite registro, recomiendo el uso de auth, ya que crea más recursos que podemos utilizar, y basta con hacer unas simples modificaciones, para omitir la autenticación, lo cual se detalla en "Laravel 8 desde cero Parte IV - Creando nuestras vistas", bajo el título: 'Sin el uso de autenticación (pero si se creó con auth)'
Al usar 'auth':
welcome.blade.php (única vista creada sin usar auth), home.blade.php;
Layouts\app.blade.php; ( layouts = diseño ), es aquí donde creamos nuestras plantillas para reutilizar.
Auth\login.blade.php, Auth\register.blade.php, Auth\verify.blade.php;
Auth\Passwords\confirm.blade.php, Auth\Passwords\email.blade.php, y Auth\Passwords\reset.blade.php.
Observaciones:
- Vemos como los archivos terminan en blade.php, este es el formato para la extensión de los archivos que usa Laravel tanto en las vistas ( Resources\Views ), como en los diseños ( Layouts ).
- Aunque blade se traduce como espada generalmente, también significa hoja ( como la hoja de la espada ), lo cual se identifica más con el uso que se le da en laravel, ya que corresponde a la vista o diseño de una página ( sinónimo de hoja ).
El siguiente comando es para el uso de las herramientas de laravelcollective. Pero es opcional.
Modificaciones del archivo .env
Para la base de datos (nombredelabasededatos crear en mi caso en phpmyadmin)
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=nombredelabasededatos
DB_USERNAME=root
DB_PASSWORD=
QUEUE_CONNECTION=database
Para la autenticación de correo, necesitamos una cuenta en Mailtrap, y modificamos:
MAIL_HOST=smtp.mailtrap.io
MAIL_PORT=2525
MAIL_USERNAME=código de nombre que provee Mailtrap
MAIL_PASSWORD=código de contraseña que provee Mailtrap
MAIL_ENCRYPTION=tls
Los datos que provee Mailtrap están en Inboxes => Settings.
Modifico también:
MAIL_FROM_NAME="${APP_NAME}"
Ejecutando el servidor de Laravel para ver proyecto
Hasta el momento sin autorización veremos:
Y con autorización veremos:
Como observamos la diferencia con la autorización es Login y Register, en la esquina superior derecha.
Por defecto Laravel nos crea tanto el modelo ( App\Models\User.php ), como la migración ( Database\Migrations\fecha_number_create_user_table ).
Si en este momento tratamos de ingresar (Login) o registrarnos (Register); nos provocará un error.
Si usamos tablas, es necesario tener activo el motor de las mismas, si vamos a acceder a ellas, en mi caso en XAMPP, MySQL. Ya sea por migración (php artisan migrate) o por server (php artisan serve).
Es necesario crear las tablas de la base de datos previamente creada y especificada en el archivo .env (como se explicó anteriormente. DB_DATABASE=nombredelabasededatos), y ejecutar:
Este comando crea la(s) tabla(s), que tengan su modelo y migración, por el momento solo seria User.
Lo cual nos permite registrarnos e ingresar, sin embargo no envía correo para verificación, es decir que no exige la autenticación.
Modificaciones para exigir la autenticación de correo
use Illuminate\Contracts\Auth\MustVerifyEmail;
Y en la declaración de la clase modificamos así:
class User extends Authenticatable implements MustVerifyEmail
Después en el archivo Routes\web.php (Archivo que contiene las rutas de nuestras vistas, y que veremos más a fondo al inicio de la parte III)
Con:
Hecho esto al registrarse, envía un correo de verificación a la cuenta Mailtrap que configuramos.
Observaciones:
Hasta aquí tenemos un sistema de registro e ingreso, con verificación de correo, lo cual se enfoca en el registro.
Sin embargo el idioma por defecto es ingles, si queremos otro(s) idioma(s), debemos hacer algunas modificaciones. (Ver: Laravel 8 desde cero Parte II - Creando middleware para Idiomas )
También falta personalizar las vistas, diseños y estilos a nuestro antojo, lo cual se usa sin y con registro (Ver: Laravel 8 desde cero Parte III - Adaptando diseños (layouts), vistas (views) y estilos).
Comentarios
Publicar un comentario