====== Controladores en Laravel ====== [[informatica:programacion:php:frameworks:laravel|Laravel]] Aunque podríamos redigir las peticiones HTTP desde el fichero ''routes/web.php'', no es recomendable hacerlo desde ahí. El fichero crecería demasiado dificultando su mantenimiento. Hay que trabajar con ficheros externos donde coloquemos la lógica que necesitemos. ===== Creación de controladores ===== Mediante el comando ''artisan'': php artisan make:controller Por ejemplo, creamos un controlador para administrar la ruta principal (''/'') php artisan make:controller HomeController Se habrá creado un fichero ''HomeController.php'' dentro de ''app/Http/Controllers'' con el siguiente contenido: Para asignarle el control de la ruta a un controlador, en el archivo ''routes/web.php'': use Illuminate\Http\Controllers\HomeController; Route::get("/", [HomeController::class, 'index']); La ruta ''/'' será gestionada por el controlador ''HomeController'' y el método ''index''. Cuando un controlador tiene un único método, podemos llamarlo ''%%__%%invoke'': namespace App\Http\Controllers; use Illuminate\Http\Request; class HomeController extends Controller { public function __invoke() { return "Bienvenido a la página principal"; } } Y donde lo vayamos a usar no tendremos que indicar el método: use Illuminate\Http\Controllers\HomeController; Route::get("/", HomeController::class);