Seguir
( 0 Seguidores)
X

Seguir

E-mail : *

Los que conocen de laravel les parecerá una entrada muy simple, pero cuando queremos aprender ninguna pregunta es absurda.

Laravel no se cierra a la banda en que debamos de usar las migraciones para crear la base de datos, también nos permite trabajar con un base de datos ya existente, podemos seguir sus reglas de sintaxis o no, laravel nos da una salida para cada caso.



Paso 0: Base de datos Creada previamente

Supongamos que nos dan una base de datos que contiene 2 tablas, una tabla categorías y  la otra productos.

La tabla categorias se compondrá de:

id                              ——–>   clave primaria auto incrementable

nombre_categoria  ——–>    varchar

la tabla productos se compondra de



id                                ——–>    clave primaria auto incrementable
nombre                      ——–>    varchar
color                           ——–>    varchar
precio                         ——–>    varchar
categoria_prod          ——–>    int clave foránea relacionada con categorías

Habiendo comprendido como esta compuesta la base de datos que nos proporcionan, el siguiente paso es crear los modelos

Paso 1: Crear modelos

los modelos se crean mediante el siguiente comando

php artisan make:model Nombre_modelo

Crearemos los modelos, los cuales tendrán dos variables tipo protected, la primera variable sera

$table     —-> Se le asignara el nombre de la tabla que deseamos enlazar al modelo

$fillable  —-> Se le asignaran en un array los campos de la tabla enlazada

los modelos quedarían de la siguiente manera

 

 

 

 

en el modelo ya creamos la relación existente entre categorías y productos, la relación existente es

Categorías 1 ————— * Productos (Una categoría puede estar en muchos productos)

En laravel cuando creamos una relación, si seguimos las reglas de desarrollo de laravel, no es necesario escribir el nombre de la clave foránea o primaria en la relación, pero en este caso no seguimos ello, si deseas mas información puedes visitar el post 

¿ELOQUENT NO REALIZA TUS CONSULTAS? O ¿TE GENERA ERRORES? CONOCE LAS REGLAS PARA EL USO DE ELOQUENT

mientras expliquemos un poco mas sobre las relaciones creadas.  la relación uno muchos se asigna con los siguientes métodos

 

Se leerá de la siguiente manera, una Categoría podrá estar en muchos productos, el segundo termino en el método hasmany() corresponde a la clave foránea.

 



Se leerá de la siguiente manera, Un Producto Pertenecerá a una categoría, el segundo termino en el método belongsTo() corresponde a la clave primaria.

habiendo comprendido esto, ahora crearemos el controlador que nos gestionara las vistas y las consultas, el controlador se crea con el siguiente comando

php artisan make:controller InicioController –resource

Ahora en la funcion index() del controlador haremos las consultas con los modelos, Normalmente como se hace en eloquent

 

Estamos consultando todos los productos, junto con su relación con la tabla categorías, es decir estamos realizando una consulta join, que en sql puro nos llevaría mas tiempo.

Finalmente en mostraremos los datos con un foreach de blade en la vista

 

con la linea

{{$producto->categorias->nombre_categoria}}

estamos consultando el nombre de la categoría al cual pertenece cada producto

pero lo siguiente es mucho mejor, observa el siguiente post, te sorprenderá



Generar Modelos Laravel de Una Base de Datos Existente

Suscribete para que te llegue el contenido!

Estoy trabajando a diario, asi que el contenido te llegara pronto.

Te has suscrito correctamente!