23 Comó crear PLANTILLAS BLADE en la PLATAFORMA de PELICULAS con (LARAVELyMYSQL) FULLSTACK

Duración: 7 min
Módulo: 🖥️ Módulo de Arquitectura Admin y Vistas Blade Lección 5 de 8

Descripción

🧱 Lección 23: Creación de Plantillas Blade (Layouts) en Laravel

Esta lección avanzada se centra en la implementación de Plantillas Blade (Layouts), un patrón fundamental de Laravel para estructurar aplicaciones web, asegurando la limpieza del código y evitando la repetición de elementos comunes como la navegación y el footer.

1. 🎯 La Necesidad de Layouts (Páginas Maestras) [01:14]

Se explica la razón principal para usar las plantillas Blade en proyectos grandes y escalables.

  • Definición: Un Layout es una plantilla maestra que define la estructura básica de una página (ej. <head>, navegación, footer y librerías). En .NET, este concepto se conoce como "Página Maestra" [01:24].
  • Problema de la Repetición (Spaghetti Code): Si se tienen 20 vistas y se requiere agregar una nueva librería o modificar el menú, es necesario editar los 20 archivos [04:55].
  • Solución: Los layouts permiten hacer el cambio una sola vez en el archivo maestro, y todas las vistas que lo extiendan heredarán automáticamente la modificación [05:04].

2. 🗂️ Refactorización y Reorganización de Vistas [02:06]

Antes de implementar el layout, se reorganizan los archivos para alinearlos con la estructura del Panel de Administración (AdminLTE).

  • Reubicación: La vista de listado de películas (Index.blade.php), que forma parte del gestor, se mueve a la carpeta admin/peliculas [02:24].
  • Ajuste de Referencias: Se actualizan la Ruta y el Controlador para que apunten a la nueva ubicación de la vista, asegurando que la ruta /admin/peliculas cargue correctamente la vista admin.peliculas.Index [02:48].

3. ⚙️ Implementación de la Herencia de Plantillas [06:16]

Se demuestra cómo las vistas secundarias pueden heredar el código de la plantilla maestra de Laravel.

  • Archivo Maestro (layouts.app): Se muestra que la instalación de Laravel ya trae una plantilla base (layouts/app.blade.php) que contiene toda la estructura HTML principal [05:21].
  • Directiva @extends: Se elimina todo el código HTML repetitivo (etiquetas <head>, <body>, enlaces de estilo, etc.) de la vista admin/peliculas/Index.blade.php [06:52].
  • Sintaxis de Extensión: Se reemplaza el código eliminado con una sola línea que indica la herencia de la plantilla maestra [07:03]:

    PHP

    @extends('layouts.app')

  • Resultado: La vista de listado de películas ahora muestra la información del backend dentro de la estructura completa (menú, cabecera, footer) de la aplicación, sin tener que duplicar ninguna línea de código estructural [07:13].