04 - Controladores en Laravel ¿Qué son y para que sirven? - Curso Laravel 10 desde cero.
Вставка
- Опубліковано 9 лют 2025
- Los controladores son clases que manejan la lógica de la aplicación y se encargan de procesar las solicitudes del usuario. En este capítulo, aprenderás a crear y utilizar controladores en Laravel, así como a definir métodos y rutas para acceder a ellos. Los controladores son una parte fundamental de la arquitectura MVC de Laravel, lo que te permitirá desarrollar aplicaciones de manera estructurada y escalable.
------------------------------------------------------------------------------------------------
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 en facebook: / 4314830498588670
Plataforma: codersfree.com/
Sin duda el mejor curso. Nadie absolutamente nadie explica esa parte del cambio de las rutas en las versiones de Laravel. gracias, muchas gracias
Hermano espero algun dia tener suficiente $ para pagarte por tan excelente contenido, es que ni en platzi explican tan detalladamente
es verdad, es de agradecer a personas como él que comparten su conocimiento, sigamos por este camino y pronto les podremos retribuir a toda esa comunidad de desarrolladores
i guess Im quite off topic but does anybody know of a good site to stream newly released movies online?
@Grady Braylen meh try flixportal. Just search on google after it:P -dayton
@Dayton Maurice thank you, I went there and it seems like they got a lot of movies there :D I really appreciate it!
@Grady Braylen Happy to help =)
Conocí el canal por la lista de adminlte (recomiendo) pero, aunque ya tenía algo de nociones de laravel, viendo la claridad de tus explicaciones he decidido empezar este curso para consolidar la base de mi conocimiento. En un curso como éste es fundamental que el que lo imparte tenga dominio total del tema, y ese, sin duda, es el caso. Gracias de nuevo!
Que locura tus cursos, muy buen contenido y encima lo explicas super bien. Felicitaciones !
No entendía porque estabas llamando a los controladores de esa manera y pensé que iba a quedarme con esa duda pero después lo explicas súper bien, así que quede súper feliz con eso ;)...Maestro
Me alegro que este curso esté acá, estoy aprendiendo lo que nunca he logrado con laravel
Gracias por tu tiempo al hacer este curso, de lo mejor que hay!
min 18:00 demasiado útil saber como compatibilizar proyectos viejos de laravel con la versión 8 debido a eso del namespace, muchísimas gracias
Este curso es una Joya, muchas gracias por compartir tu conocimiento
Claro,conciso, es excelente el curso y recien voy en el tercer video. Felicitaciones y mil gracias por el contenido. Te acabas de ganar un seguidor mas 🫶🏾👏🏽👏🏽
Excelente flores, gracias por aclarar esa nueva regla para declarar las rutas de controladores y sus métodos, hace unas semanas atrás realizaste la propuesta de realizar un curso completo y expusiste dos opciones Blog ò E-commerce, veo que gano la opción del Blog... perfecto todo lo que se pueda aprender con buenas practicas bienvenido, pero al terminar este seria vital hacer un e-comerce o un sistema administrativo..que es otro muy solicitado...felicitaciones mi estimado eres un Profesional..Congratulation my Friend
Amigo, si pienso hacer otra serie en paralelo en la que explicaré como hacer un ecommerce.
Para esa serie ya daré por sentado que saben utilizar Laravel, y me centraré en explicar cómo desarrollar el proyecto, mientras que en este curso explicare laravel desde cero y al final explicaré como desarrollar un blog.
La serie del ecommerce espero poder iniciarla la próxima semana, va depende mucho de como este mi carga laboral.
Por fin!!! , Hasta que encuentro un programador que si explica todo perfecto, Excelente video Coders Free, Like video, explicas todo muy bien
Muchas gracias por tu dedicación, eres un excelente profesor con buena didáctica.
Muy bien explicado ! Espero puedas subir el siguiente mañana, me quedé clavado, gracias.
el curso está buenísimo, sin duda que si sigue asi, me compraré el avanzado en la pagina de coders👌
Pues si te gusta este, el de la web te gustará mucho más ya que profundizó mucho más en cada tema y toco temas que aquí no 😁
Muchas gracias!! Me está sirviendo muchísimo ver estos videos :D
Gracias por tomarte el tiempo de compartir tu conocimiento
Excelente, es muy grato escuchar un curso de un EXPERTO.....gracias
Graciaaaaas por todo el contenido explicas muy bien. 100000% recomendado, comprare tus cursos para contribuir tu excelente trabajo.
Siempre había pensado que el modelo era la base de datos, pero ahora entiendo que el modelo es el código del lenguaje que se encarga de conseguir los datos de la base de datos, muchas gracias ahora si me queda mas claro
¡Excelente explicación!
Mi enhorabuena, por el tutorial, bien explicado y muy claro, darte las gracias por tu tiempo.
Excelente tu explicación! muchas gracias!
Se nota que lo haces porque te gusta enseñar, muchisimas gracias parcero!
Hermano! talento el tuyo de enseñar, mil gracias
Muchas gracias!! Súper claro la parte del invoke. Pocos lo explican!
Tenés algún vídeo que explique cómo implementar interfaces del modelo en laravel?
Una genialidad profe, todo lo de este capitulo. Muchas gracias por compartirlo.
excelente el curso, muchas gracias!
Nuevo Sub ... explica facilisimo todo 👍
genio
Muy buen vídeo, explicas muy bien y explicas lo importante!
Que buen contenido, muchas gracias
Gracias por el tutorial y la voluntad de hacerlo.
muy muy buenos tus videos, y ni hablar de la pagina que te montaste! como se nota el conocimiento. Animos desde Argentina :)
Muy buen curso recién lo inicio a ver y ha sido el que mejor he entendido
En Laravel 7, para dirigirme a los controladores por medio de un enlace (Alt + Ctrl), usaba un plugin de VSC, llamado Laravel Goto.
Cuando realicé la actualización a Laravel 8, y no tener que importar toda la cantidad de Controllers que tenía, opté mejor por especificar el namespace como explicaste en este video.
Este man es un crack!
Excelente explicación, me gusta mucho la forma en que explicas.
Gracias por tomarte el tiempo de enseñarnos
gracias crack estoy siguiendo el curso y muy bien explicado gracias
Excelente video!
Gracias por la info brother
Gracias por compartir tu conocimiento, actualmente estoy acabando mis practicas y me van a contratar para desarrollar unos sitios (al fin voy a dejar de chambear de gratis XD) y por varios motivos lo voy a hacer en PHP, de seguro voy a comprar tus cursos de Laravel en Udemy, explicas demasiado bien e incluso los cambios de la versión anterior y el motivo, 100% recomendado
Explicas muy bien! gracias por compartir tu conocimiento.
Buen video!
Muy buen curso, completo y buena explicación
Buenisimo, muchas gracias
Gracias, excelente video
Buen video, muy bien explicado.
Muchas gracias Maestro, muy bien explicado!
Sería bueno que en tu pagina web hubiese una seccion para extensiones interesantes del vs code en laravel, otra con atajos de teclado, por ejemplo comentar es alt+shif+a, o cualquier cosa que nos ayude a programar mas rapido y a hacer mejor las cosas, por ejemplo para formatear bonito el codigo rapidamente o el Ctrl+D para subrayar y editar texto igual, tambien tener un indice de comandos para git en laravel, por ejemplo para crear nuevo proyecto.. cual es la ruta y comando, o para crear un nuevo controlador, cual es la ruta y comando. aunque creo que todo eso lo tienes, pero en caso no, podrias hacerlo
Nice! this video is very good.
Que excelente explicación.
Tengo una duda.
En varios casos te refieres a convenciones.
¿Hay alguna bibliografía que usas o es netamente la experiencia adquirida?
Eres un crack bro
muy interesante el curso
Excelentes tus cursos, muchas gracias!!! En Venezuela es complicado el tema de pagos internacionales para hacer compras online, pero en lo que pueda compro tu curso en Udemy. Haz pensado hacer uno de Alpine? o uno solo de rutas de Laravel con todas las funcionalidades que esta tienen?
Hola, si, haré uno de Alpine en el canal 😁
Parcero, si quiere le puedo explicar algo de pronunciacion en ingles, ya que esta excelente el curso, pero para que ud se fortalezca mas le podria explicar algo de ingles, severo contenido :D
Gracias!!
suscrito man... eres bueno
me gusto el tutorial una pregunta no se por que me ha surgido un problema de forbidden no se a que se debera al momento de cargar otra ruta
que genial, enseñas muy bien, solo que no uso vscode, uso nvim, no tengo mouse por eso jaja
Buen video amigo! una pregunta se puede hacer un solo controlador para todas las rutas o no es recomendable?
Una pregunta si creo una sub -carpeta dentro de la carpeta controllers, como puedo llamar a ese archivo y verlo en pantalla. ?
entiendo que este curso es para laravel 8 ? no hay mucha diferencia con la actualización a 10 ? ya que es la que estoy usando
La antigua manera es de laravel 7 únicamente o abarca más versiones?
Que explicas muy bien, te pasaste hermano, de donde eres????
Buenos días, está genial. No sé si será apropiado y oportuno preguntar: Porqué es necesario invocar o de dónde viene la propiedad ::class al enrutar el Controlador?
Hola no es una propiedad es un método.
Todas los controladores que nosotros creamos se extienden de la clase Controller, y esa clase es la que tiene ese método.
Basicamente lo que hace el método class es devolverte la ruta del controlador, ejemplo
Si pones HomeController::class te devuelve 'App/Http/Controllers/HomeController"
como andas? explicas muy bien. me encantan tus cursos, te hago una consulta no tenes los cursos por escrito, es que a mi me gusta mas leer , voy a mas velocidad para aprender y me es mas facil la consulta activa
genial mas rapido entendi aqui
Muy bueno, Laravel 8.
Es el patrón Front Controller o MVC ?
Muy bueno.. Que onda con los grupos de rutas? recuerdo que se le ponía un prefix.. eso quedo o no se usa mas?
El prefix es para ponerle una palabra delante de todas las url del grupo, por ejemplo que las url tengan la forma /admin/cursos.
Creo que te refieres al namespace, que era para indicar que los controladores iban a estar dentro de una carpeta.
Aún se podría seguir usando eso, si modificamos el archivo RouteServerProvider, al final del video explicó las ventajas y desventajas que te podría traer hacer eso.
hola, excelente explicación, en el caso de las Route::resource siguen funcionando en laravel 8?
Desde luego amigo.
hola amigo una consulta,
si tengo un proyecto en laravel 8 que ya esta listo, lo puedo ocupar en laragon aunque no tenga php 7.4?, me explico en mi pc tengo instalado xampp donde creo los proyectos, una vez terminado copio el proyecto en el servidor de mi trabajo, este tiene instalado laragon con php 7.2 y es ahi donde termino ejecutando los proyectos, afectara en algo o tengo q instalar xampp en ese pc igual?
Si lo corres en Laragon y este no tiene PHP 7.4 puede que tengas incompatibilidad en ciertas funciones de tu proyecto.
Pero puedes actualizar la versión de PHP que viene con Laragon
Que tal, excelente curso muy bien hecho, ayudeme con algo, en esta linea me da error
Route::get('/', HomeController::class);
error: syntax error, unexpected 'class' (T_CLASS), expecting identifier (T_STRING) or variable (T_VARIABLE) or '{' or '$'
me esta tomando el metodo class como una variable cuando no es asi. Deme luces para poder seguir
Hola buenas, muy buena explicación, gracias. Una consulta, se pueden crear otros métodos en un controlador, diferentes al create, store, show, edit y destroy?... De ser así, cómo haríamos para que laravel los reconozca y poder utilizarlos?
Si. Puedes crear métodos(funciones) con el nombre que tu quieras. Simplemente el ha usado esos nombres porque son buenas practicas a la hora de desarrollar código.
porque haces referencia a LARAVEL 8 y en titulo del Curso indica LARAVEL 10. disculpa es que me interesa aprender LARAVEL10
Funciona para ambas versiones
me puedes enseñar como es el codigo para cambiarle el nombre a la aplicacion por favor
tuve problemas al agregar el controlador a la hoja de rutas por una simple minúscula
Hola bro, ando buscando y buscando pero no encuentro, quisiera saber si tú sabes la forma correcta de agregar un Helper personalizado en esta nueva versión, en la versión 7 lo tenía así en el archivo composer.json:
"autoload": {
"psr-4": {
"App\\": "app/",
"Database\\Factories\\": "database/factories/",
"Database\\Seeders\\": "database/seeders/"
},
"files": ["app/Extension.php"]
},
"autoload-dev": {
"psr-4": {
"Tests\\": "tests/"
},
"files": ["app/Extension.php"]
},
Siendo las líneas "files" las que se agregaban solamente y posteriormente haciendo un composer dump-autoload desde la consola, pero ahora solo me tira un error 500 en el navegador, si llegaste hasta este punto gracias por tu atención :)
maic 3:15
crack
como haces para descomentar rapidamente seleccionando todo el comentario?
hay alguna razon del porque el metodo que se creo en el controlador de home se llama __invoke o solo es un nombre cualquiera
se usa para cuando una ruta no necesita demasiada logica y no se intancia el metodo. como en los otros metodos index
'controller::class, 'index'
hola amigos cuando ejecuto por GET lo que es 'cursos' y 'create' me arroja por consola este error: "GET localhost/aprendiendo-laravel/public/create 404 (Not Found)" y stoy aplicando tal cual como lo hace el profesor alguien que pueda darme alguna ayuda de por que me sale
solucionaste?
Si amigo resolví ejecutando el comando php artisan serve
O usando Laragon
@@gabrielbustamante6369 Gracias por tu autoayuda xD, me sirvió. Yo también tenia el mismo problema y también seguí el video paso a paso y lo devolvía una y otra vez para ver si me faltaba algo y pues nada. Con el comando que diste ahí si toman las rutas. Mi duda es si tendré que estar para siempre ejecutando ese comando o hay alguna otra solución?
Efectivamente, me quede trabado en ese mismo error...
Es más cree otro Controlador y el problema persistia...
Pero al ejecutar la instruccion que recomienda @gabrielbustamante6369, resolvi dicha situacion...
Solo que esta vez lo ejecute desde el Software Cmder y no tuve problema alguno...
Será talves porque estuve ejecutando desde Wamp...?
Deberias usar la terminal dentro visual studio code hermano!
Could not open input file: artisan eso me sale al intetar crear la carpeta artisan alguien que me ayude
porq se elimino el uso del namespace en el archivo routeserviceprovider?
En este video lo explico
@@CodersFree en este mismo vídeo lo explicas...? Bueno tendré que verlo de nuevo. Gracias por compartir tu conocimiento. Ya encontré donde explicas el porque del cambio, esta en el minuto 16:19
Quién es "Maik"???
tocayo es laravel 8 o laravel 9 porque hablas en el video de laravel 8 pero en el titulo dices laravel 9?
La verdadad, está muy bueno el curso, me sirve. Pero debo decir que el instructor debería mejorar su inglés.
Tuve un problema con el rout, en el archivo web.php no me funcionaba "Route::get('/', HomeController::class)" me tiraba error de las rutas.. lo solucione usando "Route::get('/', 'HomeController');" por si a alguien le paso lo mismo. Saludos!
Esa es la antigua forma de definir las rutas. Es probable que no estés trabajando con Laravel 8
@@CodersFree gracias! no me habia dado cuenta, ya lo solucione
@@CodersFree Hola. Yo tengo ese mismo problema, y sí tengo instalado php 8.0.2 con Laravel 8.29.0. Comprobado desde la línea de comandos. He probado lo que dice @Ema Delgado y me funciona, pero la forma en que lo pones tú no. Cúal podría ser el motivo?
@@emaaadelgado Cómo lo solucionaste?
@@oxk4r01 mandame screen de tu error a emadevjs@gmail.com cuando salgo de trabajar lo veo.
En el título de los vídeos dice Laravel 10, pero en los vídeos al explicar mencionas que es Laravel 8
alguno le da error esta linea de codigo?? use Illuminate\Http\Request;
Route::get('cursos/{curso}/{categoria?}',[CursoController::class,'show']); //asi quedó mi ultimo controlador
// y así quedó mi función
public function show($curso,$categoria=null)
{
if($categoria){
return"Bienvenido al curso $curso, de la categoria $categoria";
}else{
return"Bienvenido al curso $curso";
}
}
php : El término 'php' no se reconoce como nombre de un cmdlet, función, archivo de script o
programa ejecutable. Compruebe si escribió correctamente el nombre o, si incluyó una ruta de
acceso, compruebe que dicha ruta es correcta e inténtelo de nuevo.
En línea: 1 Carácter: 1
+ php artisan make:controller CursoController
+ ~~~
alguien solucion?
No quieres q vayan a tu casa a instalartelo? buscale uei.
No se está ejecutando el php
La versión de php puede no ser la correcta
El path de php puede no haberse definido en variable de entorno
Revisa todo eso, en especial el 3ero
al final si la usaste XD
aaaaa me gusta tus videos pero soy muy tiquismiquis con algunas cosas y cuando escucho la pronunciación del ingles mal me muero, como decir maik (make) es fonéticamente meic, name no es se lee name es neim o champ y es shamp jajaja lo siento tenia que descargarlo un poco, tus videos son buenos y estoy aprendiendo muchos, gracias, solo mejora tu ingles es importante para un programador me disuclpo si es algo grosero es cosa mia
Hola, de hecho no es nada grosero, y me ha causado gracia.
Y de hecho ya estoy trabajando en ello, estoy llevando inglés, pero bueno, los videos ya están grabados, así que no hay nada que pueda hacer.
Para futuros cursos se verán reflejados las mejoras 😁
Hola amigo como estas, me agrada tu curso y espero poder donar algo pronto. Tengo un problema, estoy tratando de vincular el controller con una ruta y me da este error: UnexpectedValueException Invalid route action: [1\App\Http\Controllers\HomeController]. La ruta en web.php es Route::get('/', HomeController::class); y el controller es class HomeController extends Controller
{
public function __invoke(){
return "Bienvenido a la pagina principal";
}
}
Tal cual como lo explicas en el video. Por favor ayuda. Gracias.
Hola Edgar, cualquier duda que tengas sobre el curso dejalo en el grupo Codersfree de Facebook 😁
Dios