🧠 Controladores: lógica de negocio en Laravel

🧠 Controladores: lógica de negocio en Laravel

En Laravel, los controladores son una parte esencial del patrón MVC (Modelo - Vista - Controlador). Su función es actuar como un puente entre las rutas y la lógica de negocio de tu aplicación. En pocas palabras, los controladores deciden qué debe hacerse cuando un usuario visita una ruta determinada.

📁 1️⃣ Ubicación de los controladores

Todos los controladores se almacenan dentro de la carpeta:

app/Http/Controllers/

Laravel ya incluye un controlador de ejemplo llamado Controller.php del cual heredan los demás.

⚙️ 2️⃣ Creando un controlador con Artisan

Para crear un nuevo controlador, utilizamos el comando make:controller desde la terminal:

Comando para crear un controlador

php artisan make:controller PaginaController
                    

Esto creará un archivo llamado PaginaController.php dentro de app/Http/Controllers/.

🧩 3️⃣ Estructura básica de un controlador

Un controlador básico luce así:

namespace App\Http\Controllers;

use Illuminate\Http\Request;

class PaginaController extends Controller
{
    public function inicio() {
        return view('inicio');
    }

    public function contacto() {
        return view('contacto');
    }
}
            

Cada método público dentro del controlador puede ser llamado desde una ruta.

🌐 4️⃣ Asociar rutas a controladores

Ahora que ya tenemos el controlador, debemos conectar las rutas en routes/web.php:

use App\Http\Controllers\PaginaController;

Route::get('/', [PaginaController::class, 'inicio']);
Route::get('/contacto', [PaginaController::class, 'contacto']);
            

Cuando el usuario visite /, se ejecutará el método inicio(). Y cuando visite /contacto, se ejecutará contacto().

📤 5️⃣ Enviando datos desde un controlador a una vista

Un controlador también puede pasar información a una vista usando el método with() o un arreglo asociativo.

public function inicio() {
    $nombre = "Jorge Ferreira";
    return view('inicio', ['usuario' => $nombre]);
}
            

En la vista inicio.blade.php podemos mostrar ese dato así:

Bienvenido, {{ $usuario }}

Laravel te da la bienvenida a tu primera vista con datos dinámicos.

🧱 6️⃣ Tipos de controladores en Laravel

  • Controladores básicos: Contienen funciones simples como las que acabamos de ver.
  • Controladores con recursos: Se usan para manejar CRUD (Crear, Leer, Actualizar, Eliminar) con un solo comando.

Ejemplo de creación de un controlador de recursos:

php artisan make:controller ProductoController --resource
                

Este tipo de controlador incluye automáticamente métodos como index, create, store, edit, update y destroy.

✅ Conclusión

Los controladores te ayudan a mantener tu código limpio, organizado y fácil de mantener. Centralizan la lógica de tu aplicación y separan las responsabilidades entre las rutas, vistas y modelos.

  • 📂 Se guardan en app/Http/Controllers/
  • 🧠 Contienen la lógica de negocio de la aplicación
  • 🌐 Se conectan a las rutas desde routes/web.php
  • 🎨 Devuelven vistas o respuestas JSON, según la necesidad

En la próxima lección veremos cómo usar Blade, el motor de plantillas de Laravel, para construir vistas dinámicas.



Publicar un comentario

0 Comentarios