Diferencia entre revisiones de «Rutas»

De Wiki Proyectos Beta
Ir a la navegación Ir a la búsqueda
Línea 61: Línea 61:
}
}
</pre>
</pre>
Si defines una ruta que usa un controlador en routes/api.php:
<pre>
use App\Http\Controllers\Api\UserController;
Route::get('/user/{id}', [UserController::class, 'show']);
</pre>
En el controlador UserController, define el método show:
<pre>
namespace App\Http\Controllers\Api;
use App\Http\Controllers\Controller;
use Illuminate\Http\Request;
class UserController extends Controller
{
    public function show($id)
    {
        return response()->json(['user_id' => $id]);
    }
}
</pre>
=== Rutas de Recursos ===
=== Rutas de Recursos ===



Revisión del 19:01 11 ago 2024

Rutas en Laravel

Las rutas en Laravel definen cómo se manejan las solicitudes HTTP en tu aplicación. Puedes configurar rutas en los archivos ubicados en el directorio routes/.

Definir Rutas Básicas

Para definir rutas básicas, edita el archivo routes/web.php:

use Illuminate\Support\Facades\Route;

// Ruta para la página de inicio
Route::get('/', function () {
    return view('welcome');
});

// Ruta con un parámetro
Route::get('/user/{id}', function ($id) {
    return "User ID is " . $id;
});

Para definir una ruta básica que devuelve una respuesta JSON, edita el archivo routes/api.php:

use Illuminate\Support\Facades\Route;

Route::get('/user/{id}', function ($id) {
    return response()->json(['user_id' => $id]);
});

Rutas con Controladores

Para manejar rutas con controladores, primero crea un controlador con Artisan:

php artisan make:controller UserController

Luego, define la ruta en routes/web.php:

use App\Http\Controllers\UserController;

// Ruta que utiliza un controlador
Route::get('/user/{id}', [UserController::class, 'show']);

En el archivo del controlador UserController.php:

namespace App\Http\Controllers;

use Illuminate\Http\Request;

class UserController extends Controller
{
    public function show($id)
    {
        return "User ID is " . $id;
    }
}

Si defines una ruta que usa un controlador en routes/api.php:

use App\Http\Controllers\Api\UserController;

Route::get('/user/{id}', [UserController::class, 'show']);

En el controlador UserController, define el método show:

namespace App\Http\Controllers\Api;

use App\Http\Controllers\Controller;
use Illuminate\Http\Request;

class UserController extends Controller
{
    public function show($id)
    {
        return response()->json(['user_id' => $id]);
    }
}

Rutas de Recursos

Para generar rutas para un CRUD (Crear, Leer, Actualizar, Eliminar), utiliza Route::resource en routes/web.php:

Route::resource('posts', PostController::class);

Esto crea automáticamente rutas para todas las acciones del controlador.