25. Controladores

En este capítulo, aprenderás cómo utilizar controladores en Laravel 10 para gestionar la lógica de tu aplicación. Los controladores son clases PHP que manejan las solicitudes HTTP y ejecutan la lógica de negocio de tu aplicación. Te enseñaremos cómo crear y utilizar controladores en Laravel 10 para separar la lógica de tus rutas y mejorar la estructura de tu código.


2 comentarios

Inicia sesión para comentar

Comentarios:

  • Victor Arana Flores

    Victor Arana Flores hace 11 meses Destacado

    Al crear su aplicación en Laravel, puede generar fácilmente controladores con el comando make:controller. Por defecto, los controladores se almacenan en el directorio app/Http/Controllers. Por ejemplo, para crear un controlador UserController, puede ejecutar el siguiente comando:

    php artisan make:controller UserController

    Un controlador puede contener cualquier número de métodos públicos que respondan a las solicitudes HTTP entrantes. Por ejemplo, la siguiente clase UserController tiene un método show que muestra el perfil de usuario:

    <?php
    
    namespace App\Http\Controllers;
    
    use App\Models\User;
    use Illuminate\View\View;
    
    class UserController extends Controller
    {
       /**
        * Muestra el perfil de un usuario dado.
        */
       public function show(string $id): View
       {
           return view('user.profile', [
               'user' => User::findOrFail($id)
           ]);
       }
    }

    Después de definir los métodos de su controlador, puede agregar una ruta que apunte a un método de controlador de la siguiente manera:

    use App\Http\Controllers\UserController;
    
    Route::get('/user/{id}', [UserController::class, 'show']);

    Cuando una solicitud HTTP entrante coincide con la URI de la ruta especificada, se invoca el método show de la clase UserController y los parámetros de ruta se pasan al método. Para aprovechar al máximo sus controladores, asegúrese de seguir las convenciones de nomenclatura de Laravel y use los verbos HTTP adecuados para cada ruta.

  • Fernando Noe Marquez Garcia

    Fernando Noe Marquez Garcia hace 1 mes

    Una consulta, tambien seria valido __invoke en el home controller en vez de index?

    • Victor Arana Flores hace 4 semanas

      Hola Fernando, si solo vas a usar un metodo en el controllador, entonces podrías usar perfectamente __invoke