Diferencia entre revisiones de «Rutas»
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.