84 CRUD - CREATE a FAVORITOS en la TABLA de la BASE de DATOS con (LARAVEL y MYSQL)FULLSTACK
Duración: 7 minDescripción
💾 Lección 84: CRUD - CREATE a Favoritos en la Base de Datos
Esta lección avanzada habilita la ruta y el método en el controlador para que los datos del formulario de favoritos se inserten correctamente en la tabla pivote de la base de datos.
1. 🛣️ Definición de la Ruta Resource [00:16]
Se habilita un grupo de rutas CRUD para el nuevo módulo de favoritos.
Uso de resource: Se utiliza el facade Route::resource en routes/web.php para generar automáticamente todas las rutas CRUD (GET, POST, PUT, DELETE) para el controlador FavoritoController [00:28].
PHP
Route::resource('home', FavoritoController::class);
- Ruta Objetivo: La operación de guardar se mapea a la ruta home.store (método POST a la URL /home), que llama a la función store en el controlador [01:05].
2. 📝 Configuración del Formulario para Envío Post [01:10]
Se modifica el formulario en la vista de la película para que cumpla con los requisitos de Laravel.
- Acción del Formulario: Se dirige la acción del formulario a la ruta recién creada: action="{{ url('home') }}" [01:27].
- Método POST: Se especifica el método de envío como POST [01:41].
- Token CSRF: Se añade el token de seguridad @csrf dentro del formulario para protegerlo contra ataques Cross-Site Request Forgery [01:50].
3. 🧠 Lógica para Guardar Datos en el Controlador [02:49]
La función store en el FavoritoController recibe los datos del formulario y los persiste en la base de datos.
- Recepción de Datos: Se utiliza el objeto $request para acceder a los datos enviados por el formulario [03:32].
- Instancia del Modelo: Se crea una nueva instancia del modelo Favorito ($favorito = new Favorito()) [04:07].
- Asignación de Campos: Se asignan los valores de los inputs ocultos (id_pelicula y email) a los campos correspondientes del modelo [04:25]:
- $favorito->id_pelicula = $request->id_pelicula
- $favorito->email = $request->email
- Persistencia: Se invoca el método $favorito->save() para guardar el nuevo registro en la tabla favoritos [04:54].
- Redirección: Finalmente, se utiliza el método return redirect()->back() para devolver al usuario a la vista de detalle de la película de donde provino, manteniendo la experiencia de usuario fluida [05:40].
Prueba de Funcionamiento
Al hacer clic en "Agregar a Favoritos", el sistema guarda el ID de la película y el Email del usuario autenticado como un nuevo registro en la tabla favoritos [06:30].
Lecciones
Apoya este proyecto
Si te gusta nuestro contenido, ¡apóyanos con una donación!
Donar por Airtm Donar por Binance¡Gracias por tu apoyo! ❤️