Creación y Configuración de Modelos y Factories en Laravel
Clase 9 de 31 • Curso de Introducción a Laravel 9
Contenido del curso
Fundamentos de Laravel
- 3

Comandos básicos de Artisan en Laravel
04:23 min - 4

Desarrollo de Rutas Web en Laravel: Creación y Configuración
06:45 min - 5

Configuración de Vistas en Laravel con Blade
07:02 min - 6

Creación de Plantillas en PHP para Vistas Eficientes
06:04 min - 7

Controladores en Laravel: Organización de Rutas y Peticiones
07:17 min - 8

Migraciones de Base de Datos en Laravel: Creación y Control de Versiones
07:02 min - 9

Creación y Configuración de Modelos y Factories en Laravel
Viendo ahora - 10

Manejo de Bases de Datos con Eloquent en Laravel
08:26 min - 11

Relaciones de Tablas en Laravel: Usuarios y Publicaciones
05:38 min
Manos a la obra con nuestro proyecto
- 12

Revisión de Controladores y Vistas en Proyectos Web
02:15 min - 13

Instalación y Configuración del Sistema de Inicio de Sesión en Laravel
05:41 min - 14

Modificación de Rutas en Sistema de Inicio de Sesión Web
04:22 min - 15

Configuración de Rutas y Controladores en PHP Artisan
04:00 min - 16

Desarrollo de Vistas y Controladores con Paginación en PHP
04:36 min - 17

Eliminar datos con formularios seguros en Laravel
04:54 min - 18

Configuración Inicial para Creación y Edición de Registros en Platzi
06:49 min - 19

Desarrollo de Formularios Seguros en Laravel
05:02 min - 20

Creación y Configuración de Registros en Base de Datos
06:06 min - 21

Método Update: Editar Formularios y Redirecciones en Platzi
01:44 min - 22

Validación de Formularios y Manejo de Errores en Platzi
04:43 min - 23

Validación de Registros Únicos en Controladores de PHP
05:32 min
Trabajemos en el diseño web de nuestro proyecto
- 24

Diseño de Área Pública con Imágenes y CSS en Tailwind
06:38 min - 25

Diseño de Gradientes y Estilos con Tailwind CSS
03:50 min - 26

Implementación de Página Home en Laravel con Diseño Personalizado
06:36 min - 27

Diseño de Publicación Individual: Estructura y Estilo CSS
04:15 min - 28

Diseño y Estilo de Publicaciones en Páginas Web
02:34 min - 29

Configuración de Formulario de Búsqueda en PHP y HTML
04:18 min - 30

Optimización y depuración en Laravel con Composer
06:12 min
Cierre
¿Qué son los modelos en Laravel?
Los modelos son una parte fundamental del framework Laravel y representan las tablas en la base de datos. Son la clase a través de la cual podemos interactuar con la información en dichas tablas y manipularla según nuestras necesidades. En otras palabras, mientras que las migraciones nos permiten crear la estructura de las tablas, los modelos nos permiten gestionarlas.
¿Cómo se crean los modelos?
Para crear un modelo en Laravel, utilizamos comandos que nos facilitan su generación y la de otros componentes asociados, como los factories y los controladores, que ayudan a gestionar y simular datos para pruebas. Usamos el comando siguiente en la terminal:
php artisan make:model NombreDelModelo -f -c
En este caso, -f indica la creación de un factory y -c un controlador, permitiendo una gestión más completa y automatizada del modelo.
¿Qué son los factories y cómo se utilizan?
Los factories en Laravel nos permiten definir plantillas de datos falsos. Estas plantillas son útiles para poblar nuestra base de datos con datos simulados para pruebas o demostraciones. Por ejemplo, si queremos simular publicaciones, un factory puede generar títulos falsos, URLs amigables y contenidos extensos automáticamente:
public function definition()
{
$title = $this->faker->sentence;
return [
'title' => $title,
'url' => Str::slug($title),
'body' => $this->faker->text(2200),
];
}
¿Cómo se generan datos semilla para pruebas?
Para cargar nuestra base de datos con estos datos prominentes generados por factories, Laravel utiliza los llamados "datos semilla". Estos son generados mediante comandos que ejecutan las migraciones y cargan estos datos:
php artisan migrate:refresh --seed
Este comando elimina las tablas existentes, las recrea utilizando migraciones y después llena las tablas con datos generados por los factories.
¿Cómo se personalizan las URLs amigables?
Laravel permite crear URLs amigables utilizando la clase Str. Esto es útil cuando queremos transformar un título o texto en un formato adecuado para URLs. La transformación se realiza así:
use Illuminate\Support\Str;
// ...
$title = "Este es un ejemplo de título";
$slug = Str::slug($title);
Con esto, obtenemos una URL uniforme y amigable para SEO basada en el texto del título.
El reto propuesto en clase
Para poner en práctica lo aprendido, el instructor ha sugerido un reto: crear 80 publicaciones y un único usuario utilizando los factories y los seeders, como se ha detallado. Este tipo de ejercicios, además de fortalecer el aprendizaje técnico, fomenta la comprensión integral de cómo funcionan las bases de datos y los modelos en Laravel.
Te animamos a que continúes explorando las posibilidades con Laravel, ya que su enfoque modular y flexible te proporcionará habilidades valiosas para el desarrollo web profesional. ¡Sigue aprendiendo!