Тёмный

Guardar un registro en varias tablas con Eloquent y Laravel 

Duilio Palacios
Подписаться 15 тыс.
Просмотров 16 тыс.
50% 1

En este video enseño cómo puedes crear un nuevo usuario grabando sus datos en 2 tablas diferentes (users y user_profiles). Para ello utilizo Eloquent ORM, Relaciones en Eloquent, Transacciones de DB, Form Requests y un poco de TDD con PHPUnit.
Puedes aprender más en styde.net/lara...
Puedes ver toda la lección aquí: styde.net/guar... (con notas y comentarios extras).

Опубликовано:

 

25 окт 2024

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 37   
@andyparedes1755
@andyparedes1755 6 лет назад
Excelente aporte, seria bueno ver como guardar multiples registros en una tabla!
@DuilioPalacios
@DuilioPalacios 6 лет назад
Andy Paredes hola! Combinando lo aprendido aquí con un foreach podría ser un buen comienzo, igual este tema lo cubriré en el curso crea un panel de control que estoy creando en styde.net. Puedes unirte para ver todo el contenido y apoyarme con el proyecto. ¡Saludos!
@daniboone7125
@daniboone7125 5 лет назад
excelente explicación me sirvió de mucho
@florpalumbo4233
@florpalumbo4233 6 лет назад
Buenas tardes Duilio, excelente explicación! Tengo una consulta, estoy comenzando con Laravel y no puedo encontrar información sobre cómo representar una herencia de clases en la migración y luego cómo se implementa el guardar y leer en la base de datos?. Ejemplo tengo la clase Producto que puede ser abstracta, definiendo atributos y comportamiento y luego tengo subclases Ropa, Calzado, etc.. Podrías ayudarme en cómo definir la migración y los modelos? muchas gracias. Florencia
@LuisSilva-jo5gr
@LuisSilva-jo5gr 6 лет назад
Hola @Duilio Palacios, tengo una pregunta con respecto al tema de relaciones, si tengo una tabla que tiene dos o mas llaves Fk como puedo ejecutar el metodo Store relacionando cada llave con ELOQUENT y que me quede el registro de una forma limpia ?
@issel728
@issel728 4 года назад
Buenardo!
@EliberioSoftEC
@EliberioSoftEC 6 лет назад
excelente aporte
@DuilioPalacios
@DuilioPalacios 6 лет назад
Gracias @Ernesto, puedes ver el resto de la lección aquí (notas y comentarios extras): styde.net/guardar-un-registro-en-varias-tablas-con-eloquent-y-laravel/
@stefanofabi
@stefanofabi 3 года назад
Consuta: Porque utilizas el metodo create dentro de la transacción? Según la documentación este método no arroja excepciones. Muchas gracias... Buen video!
@DuilioPalacios
@DuilioPalacios 3 года назад
Stefano Fabi que tal si la consulta en la DB falla?
@stefanofabi
@stefanofabi 3 года назад
@@DuilioPalacios si a eso me refería, pero se supone que no importa porque la transacción es atómica cierto? En el peor caso ejecutará toda la transacción y la revertira si es que no agregas condicionales. Estoy en lo correcto? Buen canal :)
@DuilioPalacios
@DuilioPalacios 3 года назад
Stefano Fabi lo que quiero evitar es que se cree un registro y no el otro, si por alguna razón cualquiera de las 2 instrucciones de creación falla ambas instrucciones serán revertidlas. En este caso en particular es muy raro que suceda si las tablas han sido creadas correctamente y si los datos han sido validados correctamente también
@DuilioPalacios
@DuilioPalacios 3 года назад
Como nota extra, este canal es solo un reflejo de una pequeña parte del contenido de Styde. Esta lección es parte del curso “crea un panel de control” en Styde.net
@federicomelo1293
@federicomelo1293 4 года назад
Buen video Dulio. Tengo una consulta y espero que me puedas ayudar, hice exactamente lo mismo en el video pero me tira un error de tipo SQL porque lo quiero hacer en el RegisterController, es decir, quiero darme de alta en la página web validando dos registros diferentes de dos tablas diferentes pero me valida todo en una sola tabla. Basicamente lo que me esta fallando es la funcion validate ya que me lo validar todo en una tabla cuando me lo tiene que validar en dos tablas diferentes. Utilizo la versión 5.7 de laravel
@DuilioPalacios
@DuilioPalacios 4 года назад
Hola Federico, puedes hacer tus preguntas en nuestra comunidad de Discord: styde.net/comunidad/ Es de acceso libre. Saludos!
@federicomelo1293
@federicomelo1293 4 года назад
@@DuilioPalacios bueno ya me uno, muchas gracias
@Peligroficial2
@Peligroficial2 4 года назад
Duilio Saludos, para Delete en Varias Tablas tendras algun Ejemplo de antemano muchas gracias.
@DuilioPalacios
@DuilioPalacios 4 года назад
Alfredo Pérez hola, en el curso de creación de panel de control en Styde.net hay varios ejemplos
@ChiquiSistemas
@ChiquiSistemas 5 лет назад
Hola, buen video, pero tengo una pregunta, como puedo hacer lo mismo (insertar registros en 2 tablas distintas), solo que con 2 bases de datos distintas?
@DuilioPalacios
@DuilioPalacios 5 лет назад
Hola @charlink123, aquí tienes la respuesta en la documentación de Laravel: documentacion-laravel.com/eloquent.html#definiendo-modelos También puedes ver el curso completo desde aquí: styde.net/crea-un-panel-de-control-con-laravel/ Muchos saludos.
@ChiquiSistemas
@ChiquiSistemas 5 лет назад
@@DuilioPalacios Gracias por los Links, pero fijate que no me resultó, ahorita estoy utilizando laravel 6 (esta parte no cambio), lo que hice fue, hacer 2 conexiones en batabase.php del config, una con la que ya estaba (mysql) y otra con el nombre de personal (solo copie y pegue la conexión anterior) la tabla la creé desde la base de datos, no desde laravel, cree 2 modelos uno para la BD1 y otro para la BD2 y cada una con sus repectivas tablas (protected $connection = 'personal') sólo para la secundaria, le definí sus $primaryKey y $fillable, pero no me dá ningún mensaje de error ni tampoco me inserta los datos, qué puede estar pasando?
@adrianrequena8112
@adrianrequena8112 4 года назад
como hago para actulizar el registro?
@luismedina4568
@luismedina4568 6 лет назад
Duilio, tengo una consulta, tengo que ingresar en una misma tabla 2 registros al mismo tiempo, la unica diferencia entre los registros es la procedencia del dato, tengo 2 select que me dan 2 usuarios distintos. en esta tabla, estos 2 usuarios tendran a un id de una empresa ambos, es decir 2 registros de una misma tabla con usuarios distintos. Como puedo ingresarlos? Agradeceria mucho la ayuda
@DuilioPalacios
@DuilioPalacios 6 лет назад
Luego de obtener los datos de la petición (Request) simplemente coloca un insert debajo del otro ya sea usando Eloquent o DB. Si cada select tiene un "name" diferente puedes obtener los datos, grabar uno y luego el otro: Model::create(['data' => $request->data_one]); Model::create(['data' => $request->data_two]); Perdona si no entendí la pregunta bien.
@luismedina4568
@luismedina4568 6 лет назад
Duilio Palacios exacto. Eso hice, usando eloquent. Pero el id de la tabla se repite, es decir me toma el ultimo valor únicamente. Intentare con insert.
@luismedina4568
@luismedina4568 6 лет назад
Duilio Palacios aparte de la pregunta. Quiero felicitarte, tengo un año con styde y he aprendido mucho de laravel. Agradecerte x dedicar tiempo a crear videos de calidad y excelente explicación. Muchas gracias duilio
@DuilioPalacios
@DuilioPalacios 6 лет назад
Tienes que asegurarte de tener 2 modelos y de definir una llave primaria autoincremento en la tabla asociada al modelo, si quieres que se genere un id único para cada registro creado, ¿Puedo ver tu código?
@stivenpiedrahita391
@stivenpiedrahita391 6 лет назад
como se llama el editor de código que utiliza?
@DuilioPalacios
@DuilioPalacios 6 лет назад
Hola @Stiven, es PHPStorm con algunos cambios: styde.net/mejorar-la-apariencia-y-funcionalidad-de-phpstorm/
@edsonramirez2580
@edsonramirez2580 5 лет назад
no entendi nada tu te crees el rayo macuin y das mucha vuelta, hablas de otras cosas y al final no se de que se trata el video, que estupidez
@DuilioPalacios
@DuilioPalacios 5 лет назад
Edson Ramirez ¿Qué significa eso de rayo macuin? ¿Es una especie de personaje o algo así?
@opmalzahn
@opmalzahn 4 года назад
@@DuilioPalacios vas demasiado rápido y enredado
@DuilioPalacios
@DuilioPalacios 4 года назад
@@opmalzahn gracias por tu comentario. Puedes ver los videos en menor velocidad, pausarlos, verlos varias veces o no verlos y buscar otro video que sea más de tu agrado. De todas formas siempre tomo el feedback en cuenta para ir mejorando aunque igual me alegra que a la gran mayoría de los usuarios les gusten mis videos. Muchos saludos.
@opmalzahn
@opmalzahn 4 года назад
@@DuilioPalacios no dije que no me gustara... he visto varios de tus videos y me han ayudado mucho. Sólo creo que este en particular está demasiado rápido, o quizá es que me falta experiencia en laravel y necesito ver los otros videos que mencionas. Saludos! :)
@DuilioPalacios
@DuilioPalacios 4 года назад
​@@opmalzahn entiendo. Para ver este video y comprenderlo bien deberías haber visto el curso de Laravel desde cero: styde.net/laravel-5/ Yo publico el material aquí de forma más suelta, en Styde es donde está todo más ordenado por cursos, series, nivel de dificultad, etc. Igual tomaré en cuenta tu sugerencia. Saludos.
Далее
Manejo de relaciones con el ORM Eloquent en Laravel
11:46
Laravel - Relaciones - Muchos a muchos.
19:57
Просмотров 17 тыс.
Laravel Eloquent: Deeper Relationships with One Query
10:37
Eloquent Upsert vs UpdateOrCreate: Practical Demo
7:39
Laravel - Relaciones - Uno a Muchos
23:02
Просмотров 32 тыс.