17 - Cómo agregar y actualizar registros desde un formulario - Curso Laravel 10 desde cero.
Вставка
- Опубліковано 9 лют 2025
- Agregar y actualizar registros desde un formulario es una tarea común en el desarrollo de aplicaciones web con Laravel. Aprenderás a utilizar la función create y update, respectivamente, para agregar y actualizar registros en la base de datos. La función create te permite agregar un nuevo registro a una tabla utilizando los valores proporcionados por el usuario en un formulario, mientras que la función update te permite actualizar un registro existente en función de su ID utilizando los valores proporcionados por el usuario en un formulario. Aprenderás a utilizar el método fill para actualizar los valores de un registro de manera segura y a validar los datos del formulario antes de agregar o actualizar un registro. También conocerás cómo utilizar la función redirect para redirigir al usuario a una página específica después de agregar o actualizar un registro. Con estos conocimientos, podrás agregar y actualizar registros de manera segura y eficiente en tus aplicaciones web desarrolladas en Laravel.
------------------------------------------------------------------------------------------------
CURSOS
🔴 Facturacion electronica Perú: youtube.coders...
🟠 Laravel avanzado: youtube.coders...
🟢 Ecommerce: youtube.coders...
🔵 Api: youtube.coders...
🟠 Plataforma de cursos: youtube.coders...
🔴 Vue e Ineria: youtube.coders...
🟣 Eloquent Avanzado: youtube.coders...
🟡 Pasarela de pagos: youtube.coders...
⚫ Laravel Web Socket: youtube.coders...
🟣 Notificaciones: youtube.coders...
🟢 Laravel Excel: youtube.coders...
🔵 Digital Ocean: youtube.coders...
🟡 Laravel Voyager: youtube.coders...
🟣 Datatable Livewire: youtube.coders...
🟠 Tenancy for Laravel: youtube.coders...
🔵 TDD Laravel: youtube.coders...
⚫ Traducir páginas: youtube.coders...
🟠 Wire UI: youtube.coders...
🔴 Acortador de links: youtube.coders...
🟡 Banhammer for laravel: youtube.coders...
🟢 Laravel backup: youtube.coders...
🔵 Actualizar a Laravel 10: youtube.coders...
-----------------------------------------------------------------------
DONACIONES
Patreon: / codersfree
PayPal: www.paypal.com...
-----------------------------------------------------------------------
Grupo: / 4314830498588670
Plataforma: codersfree.com/
un tip para los que no sepan a la hora de la creación de un controlador le ponen a lo último -r para evitar estar escribiendo los métodos por lo tanto el comando es php artisan make:controller NameController -r -> el -r hace referencia a los recursos que usualmente se usan en un CRUD y te crea los métodos index,create,store,update,showedit,destroy
consejo
valioso
No te conozco, pero te amo, gracias
eres un crack es el unico curso que he segido en youtube en donde al final de cada video no debo quedarme a sacarme los ojos porque algo no funciono, EXCELENTE TRABAJO
Una maravilla de curso, no entiendo por qué a muchos les disgusta tanto PHP y a mi me parece tan intuitivo, y con ésta maravillosa herramienta llamada Laravel todo es incluso más sencillo. Ojalá me hubiera encontrado con éste curso antes... y yo quebrandome la cabeza con Angular...😅😂😂
Magnifico curso, de verdad que me esta ayudando mucho en mi formación. Me quedo con el nombre del canal y los tendré en cuenta para otros cursos que quiera hacer, así mismo decir que a todos lo que quieran aprender Laravel les recomendare este canal. Haces una gran labor didáctica explicando detalladamente todos los pasos, mucho mejor que cualquier profesor sin motivación que pone en clase 4 diapositivas con código y nos manda a realizar la practica.
De nuevo muchas gracias y un saludo!
Usted hace que todo se vea y se lea mejor. Mis respetos para usted.
He llagado hasta este video 14 y no había comentado !!! estos videos son geniales de facil explicación y facil de entender, los videos divierten y no aburren eres exelente explicando me está sirviendo de mucho!!! saludos
Eres muy bueno explicando, ya me hice fan tuyo y espero en un futuro hacer la misma labor tuya, encaminar a otros en este mundo. Sigue así
No entiendo como solamente tienes 10k suscriptores. Te mereces muchos más amigo, explicas increíblemente bien!
Pues recien llevo un año de existencia, así que creo que 10 mil es bastante 😅
ahora ya van 34k = 34 mil Lol
Consejo para la vida profesional:
No te asustes cuando no veas un codigo parecido como el que acabas de hacer con el video, tienes que aprender a leer codigo, preguntarle a tu senior si tienes dudas y entender la logica del frame, existen mil formas de hacerlo. Pero la sintax es la misma, mucha suerte y fuerza a los junior, de junior a junior.
A partir de este curso me hice click y siento que ya estoy más familiarizado con PHP LARAVEL muchas gracias!
¿Me estas diciendo que tarde como 1 mes en aprender a hacer un crud y ahora lo hice en 1 minuto? jaja Dios como me encanta.
E..X..C..E..L..E..N..T..E.... cada dia esto se pone mas interesante, gracias por compartir tus conocimientos, ademas hacer referencia al comentario de el Sr Edser Moreno, gracias por ser constante y llevar el curso a buen ritmo, sin prisa pero con claridad y sobre todo CON CALIDAD... congratulation my fired....
Muchas gracias, estoy a pocos videos de llegar a este xD, me he vuelto fanático de Laravel. Iba a descartar php como lenguaje, pero ahora quiero aprender más de este gran lenguaje🕺🏽🕺🏽🕺🏽
enseñanza nivel dios, sin duda eres el mejor...
Wowwww, en verdad me deja impresionado, muchas gracias por hacer estos videos. Me ayudan muchísimo. Gracias!!!
Estaba trabajando con otro framework de php y lo que has comentado de Laravel , me parece que realmente ahorrara mucho tiempo de desarrollo
Hermano gracias eres un gran Maestro o Profesor como quieras jejejejejeje
Muchsimas gracias me están ayudando un montón, porque no se porque no me termina de funcionar cuando creo la vista para acceder que muestre el formulario de editar y poder modificar los datos... algo raro, pero lo demás esta muy bien! eres un crack!
Esto es como magia, excelente, muchas gracias, de verdad muchas gracias.
todo realizado lo de este video. explicas de maravilla. algunas palabras en inglEs no las pronuncias correctamente, pero es tema de acostumbrarse jeje gracias Victor. ejemplo GET se pronuncia GUET, no jet jeje
Excelente curso!!!
Muchas gracias la verdad que explicas muy muy bien! te felicito...
Eres una máquina 😃😃
Gracias, tus explicaciones son muy claras
Pedazo de video Víctor, un maestro. muchas gracias.
genial este curso, felicitaciones!
Muy bueno vos, gracias!
Genial muchas gracias.
El mejor ✨✨✨✨
¿No se podría utlizar el metodo ya creado "store" también en lugar de crear uno nuevo llamado "update"?
Por personas como tú seguimos vivos en la programación.
buenas tardes sr Victor, una consulta y si yo quisiera imprimir en un archivo el registro seleccionado o q recien guarde como podria hacerlo.?
hola bro una consulta min 19:00 pasas un parametro $curso pero no especificas el id , ¿es por que laravel lo sobreentiende?
Gracias amigo, me ayudas mucho capo..!!
Uy parcero he aprendido mas aqui que en clases de la U jajajaja literal no se que haria si no estuviera este curso perdido mas que la mama del chavo muchas gracias enserio.
Hola como se hace para subir el proyecto a un hosting? Tenes algún tutorial?
¡Muchas gracias!
Excelente curso. Te agradezco mucho lo que nos enseñas. Mi duda es. Se puede gestionar los tokens de los formularios para enviar los datos de manera externa. Ej. Si tengo una app móvil y quiero menejar esos mismos formularios?
Sí, es posible gestionar los tokens CSRF (Cross-Site Request Forgery) de los formularios en Laravel para enviar datos de manera externa, como en el caso de una aplicación móvil.
Consulta al momento de guardar el ID me sale falla, en que momento se generar el +1 en el contador de ID?
estoy siguiendo tus cursos pero me surgio una duda espero que me la puedas responder lo que pasa es que tengo un select de activo o inactivo y lo quiero guardar en la base de datos pero me marca erro me podrias decir como se guarda un select bien a la base de datos y como llenar tablas que contienes solo llaves foráneas
Una pregunta y si seseo usar post en vez de put se podria? o es menos seguro
Hola que tal man, estoy recien empezando a ver tur tutoriales y me parecen increibles, de verdad agradecido que compartas tus valiosos conocimientos en bienestar de los que estamos empezando y los que ya tienen experiencia, mi duda es yo estoy en este video 14 y hasta aqui todo me ha salido perfecto, queria saber si enseñarias la otra parte del crud que es eliminar y si se elimina un registro que no se elimine del todo de la base de datos sino que se quede como especie de una papelera en la propia base de datos, gracias de antemano, felicidades por este gran curso!!!
Si, lo aplicaremos sobre el proyecto que realizaremos que será un blog
Como le sale el auto completado, que extensiones usas, por que yo las que instalo no me están funcionando, no se si debo hacer una configuración global o que?.
chavos, alguien me podria decir porque no me reconoce el campo categoria y los demas si, min 12:33 del vidio :c
Que curso tan genial, voy por acá. tengo una pregunta.... Oye como hicieste para escribir en 3 líneas a la vez???? oye agregaste 3 saltos de lineas escribiendolo una sola vez.... En el video anterior paso algo parecido.... ver min 2:20.... Por favor cualquiera que pueda incarme..... Gracias!!!! Genial @victorarana Tienes facilidades para comunicar tus clases... te sigo.... de cerquitaaaa jajajaja. Saludos desde Venezuela
Presionando la tecla alt y vas clickando donde quieras
y como seria para que la creaacion no esa en otra pagina sino en un modal , tienes algun tutorial referente a eso ?
Alguien sabe porque me sale este error (SQLSTATE[23000]: Integrity constraint violation: 1048 Column 'descripcion' cannot be null (Connection: mysql, SQL: insert into `cursos` (`name`, `descripcion`, `categoria`, `updated_at`, `created_at`) values (java, ?, Diseño web, 2024-09-24 16:11:11, 2024-09-24 16:11:11)) en visual estudio code con la base de datos de xampp)
Lo que te dice es que estás enviando el campo "descripcion" como nulo y no puede ser nulo, revisa tu formulario si el name del input le pusiste el mismo nombre descripcion
26:19, como es que en descripcion con un click cambia de texto de "El mejor framework de PHP"
a El mejor framework del mundo. Le doy click y no se cambia
31:01, como es que cambia el "Laravel desde cero" a "Laravel desde cero 2", al actualizar la pagina despues de poner
return $request->all();. Ya que no se cambia el nombre
@, me da Trying to get property 'name' of non-object (View: C:\xampp\htdocs\blog
esources\views\cursos\show.blade.php)
Yo también estoy teniendo el mismo problema me sale Trying to get property 'name' of non-object (View: C:\xampp\htdocs\blog
esources\views\cursos\show.blade.php)
Excelente forma de explicar. Tengo un problema al pasar los datos al form para editar, en los campos nombre y categoria, solo me trae la primera palabra del nombre, truncando el resto. Los datos llegan bien a la vista pero los corta al mostrarlos en el formulario
Solucionado. Me faltaba encerrar entre comillas el value, menuda tonteria
no es mejor reutilizar el formulario, de crear y editar para no hacer dos veces el mismo formulario?.
Puede que a veces no quieras que se pueda editar todo el contenido, entonces es mejor crear otro archivo
20:51 para una persona que estaría aprendiendo programación no entendería la instancia que estas haciendo, a pesar que estas haciendo un gran trabajo explicando cada parte del codigo. y que lo que esta haciendo en ese momento el código.
lo que esta haciendo es crear un objeto idéntico "controlador" realiza una consulta: R Dime si este objeto {id:[titulo,descripción,categoría]} existe instancia->Controller consulta al modelo->[base de datos] este responde si este objeto existe y estos son sus atributos. no existe ninguna propiedad escrita con eso atributos así que lo crea a través de la consulta. Exitos
En esta parte me está regresando vacío todo ( " [ ] "), por qué será?
El curso buenisimo y te felicito... pero por favor agranda el tamaño de la fuente porque me esta dejando ciego
{"name": null,"description": "De muy buena calidad","categorias": null}
¿Porque me sale así al enviar?
Que hace uno cuando ya se acaba los videos de Laravel v8? pss seguir con el de Tailwind css xD
Gracias por compartir tu conocimiento esto me esta ayudando mucho para un proyecto que quiero hacer en laravel.
Amiga el profe tiene planificado terminar este curso con el proyecto del BLOG y luego comenzara otro con un proyecto para E-Commerce, ademas de los tips que suelta de vez en cuando y no están nada mal.. ok sitting down please go get a cup of coffee...
Excelente profe, una pregunta de novato por favor. Como hace para escribir un termino cualquiera en varias filas al mismo tiempo dentro del editor? algo asi como lo que hace en el minuto 25 al repetir la propiedad value en varias filas. Como hace eso? Gracias!!
ctrl presionado + click en los lugares a escribir
hola si alguien se ha entendido lo que occurio en metodo update me lo explica por favor en la ruta se restaca un parametro , pero en la funccion estamos usando 2 parametros el primero es objeto de tipo request y segundo es objeto de tipo curso , asi estamos recibiendo dos argumentos de diferentes tipados de datos y luego estamos haciendo la asignacion que es muy claro .
Hola Victor, primero quiero darte las gracias por tu curso de laravel 8, me ha servido mucho la aplicación de tus conocimientos en un proyecto académico que estoy realizando. Necesito me ayudes por favor con una duda que tengo ya que sos todo un Pro en la materia. ¿Hay forma alguna de implementar 2 procesos distintos en un solo formulario o sería obligatorio crear 2 formularios con 2 submits distintos (uno para insert otro para update)? Quiero lograr que con un solo formulario me inserte los input en una tabla y me actualice columnas específicas de otra tabla
Yo, personalmente con respecto a eso intentaría hacer lo que hablas con un trigger en la BD propiamente
Tengo la función show pero me retorna vacía "[ ]"
public function show(Curso $curso)
{
return $curso;
}
¿Alguna sugerencia o algo de lo que me haya perdido?
x2 me paso lo mismo
Sabes a que se debe?
@@francm_1 Era un detalle en el archivo Routes, estaba enviando con un nombre distinto la variable.
@@jesusguerrero9515 Hola! podrias ampliar un poco mas? Tengo el mismo problema pero no encuentro la solucion; en las routes uso resource no deberia afectar pero igual me retorna vacia.
@@brigidoalonso3845 intenta esto: en la consola escribe: php artisan route:cache , la mayoria de veces pasa que las rutas se quedan en cache y dejan de funcionar, cuando te salga el array vacio [ ], ve a la consola y ejecutas esto y luego refrescas la pantalla del navegador
A mí no me redirecciona, a pesar de que tengo el código igual al del video, y antes de hacer la redirección, todo funciona perfecto.
me pasa igual lo he intentado de muchas maneras pero no me funciona, todas me cargan la pagina en la que estoy.
@@lexseven0786 Ya lo solucioné, era un problema con una extensión del navegador.
En la ruta: agrego Route::post y en el formulario agrego Method = "Post" y en la siguiente linea tambien agrego @csrf. Y aparece el siguiente error: The POST method is not supported for this route. Supported methods: GET, HEAD.
yo tengo el mismo, lo pudiste solucionar?, solo que a mi me aparece asi
El método GET no es compatible con esta ruta. Métodos admitidos: POST.
@@etzelperez3955 Si llegue a solucionarlo, primero tienes que tener en claro lo que la ruta va a ser, si vas a usar un registro de datos, en la ruta tienes que usar Route::post(.....) y en el formulario no olvidar usar el encabezado method = "POST". Y si quieres hacer una actualización en la ruta usar Route::put(....) y en el formulario no olvidar usar el encabezado method = "POST" y en cuerpo del formulario agregar @method('put').
@@cesarvasquezleon1527 Si jaja mi error era que no cerraba el form hasta el final del formulario
Hola muy buen curso, explicas muy bien, lo único en este este video dices que laravel (entiende) pero no explicas el motivo por el cuál al pasar el objeto curso en Route::get('cursos/{curso}', 'show')->name('cursos.show') y NO ÚNICAMENTE el id, curso->id, laravel muestra el id en la url p.ejemplo /cursos/54. ¿Cómo hace laravel internamente para mostrar el id en la url si le estamos pasando todo el objeto? ¿Es por qué es la primary key o cómo? eso no se explica...
hola muy buen curso, tengo un pequeño problema y es que al momento de editar un registro lo edita y al mismo tiempo crea otro registro, osea en realidad no lo esta editando sino creando otro registro con los datos que se supone que debe editar, si alguien pudiera ayudarme se lo agradeceria, gracias.
Publícalo en el grupo CodersFree de Facebook
@@CodersFree ya lo pude solucionar, gracias
Hola crack, me dice que el método put no es compatible con la ruta, me podrías ayudar por favor
Tienes que haber definidos ruta como put
@@CodersFree Route::put('cursos/{{curso}}', [CursoController::class, 'update'])->name('cursos.update'); eso hice crack
@@CodersFree solucionado, estaba poniendo doble llave en el parametro de la URL, excelente guia amigo
Una consulta para el tema de seguridad
Que pasa si el copia el input que aparece dentro de cualquier formulario de la pagina
y se lo agrega a su formulario que crea para ingresar pagos maliciosamente tal cual como explicas en este video.
Le saldría un mensaje de token caducado, ya que Laravel lleva un control de los token que se crea.
Igual tenemos que validar siempre la información que se manda por formulario, sobre eso hablaré en el próximo capitulo.
De hecho habrá 3 capítulos más en la cual seguiremos hablando sobre los formulario.
@@CodersFree Muchas gracias por responder. Estare esperando con ancias esos videos. De ante mano, buen canal
Tenía el codigo funcionando, pero luego lo cambíe de página y ahora en vez de editar agrega una nueva instancia
Busca el grupo de Facebook Coders free y ahí publica tu código
Ya encontré mi error, era en la ruta, no había agregado un parámetro bien.
Muchas gracias uwu tus vídeos me han ayudado mucho 💝✨
Hay un curso en udemy muy pero muy parecido al tuyo..podria decir que es el tuyo mismo ejemplo ....Pero el de udemy se ve que se lo copio de este.. excelente explicacion un sub mas y like
ya vi 17 de los primeros videos de este curso y es el mismo curso.en udemy(diferente voz jajaja).. de hecho algunos conceptos que los explica muy mal el de udemy .....Gracias por este curso master... excelente explicacion... esto me ayudara bastante para un proyecto nuevo de tracking system en mi empresa
Mándame el link porfa para darle un vistazo
Revisa la parte de laravel
no me funciona esta linea de codigo:
para extraer los datos de la otra manera que tu lo haces, me genera un arreglo vacio
public function editar(pelicula $edit){
return $edit;
}
¿Pudiste solucionarlo?
A mi me pasa lo mismo, de la unica forma que yo pude arreglarlo fue con el primer metodo que el profesor uso buscando por el $id
Es porque al usar PUT también manda el $curso por la url como se ve en 29:21. Si no hay que usar el objeto Request
Todo los vídeos han gustado, específicamente porque no has perdido el tiempo en la apariencia, sino en la funcionalidad. UNA PREGUNTA, ¿no validaste?
1 ¿usarás el form request validation?
2 De acuerdo a muchos paradigmas como el MVC quien debería guardar es el modelo (otros frameworks así lo hacen), aquí observo que guardas desde el controlador, no veo complicaciones y me parece bien y los paradigmas son opcionales (quebrantables). Que opinas?
3 Hablas acerca de: request->all() pero no lo usaste. obviaste El fillable en el modelo para la asignación masiva. Ahorra líneas de código.
Gracias CodersFree, seguimos aprendiendo.
Hola amigo, la validación lo haremos en el próximo capítulo, y en cuanto a la variable fiable, aún no lo he incluido porque todavía no estamos utilizando la asignación masiva, eso lo explicare en dos capítulos.
Soy el unico al que cuando actualiza un formulario, en lugar de actualizar el mismo registro, crea otro nuevo?
Revisa que tu registro tenga un id, antes de mandar el "$registro->save()", coloca un "return $registro" y revisas si el id te aparece con un valor
Ya lo solucionaste? cambia el $registro->save por $registro->update()
Me gusta, pero no me gusta la parte de las urls, no entiendo la relacion, por ejemplo, bien no se puede poner cursos/{curso}/edit como cursos/create o cusos/{curso}/show .... la verdad confunde eso pero me imagino que es algo que cada quien lo hara diferente
crack
por que no usar $curso->update(); en vez de $curso->save(); para actualizar me quedo esa duda. yo lo realizaba con update
Hola, porque estoy explicando como funciona Laravel.
Más adelante explicó el uso de los métodos create y update
Cuando hable de asignación masiva
Ejjj que si uno no aprecia, tampoco percata.
hola como podria mostrar el valor desde un select?
Buenas, estoy siguiendo este vídeo y me sale el siguiente error Trying to get property 'name' of non-object (View: C:\laragon\www\blog
esources\views\cursos\show.blade.php) justo cuando doy de alta un curso y tiene que mostrar el curso agregado en la página ¿Alguien puede ayudarme? gracias
crack