Diferencia entre revisiones de «Rutas»
(No se muestra una edición intermedia del mismo usuario) | |||
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 === | ||
==== Route/WEB==== | |||
Para generar rutas para un CRUD (Crear, Leer, Actualizar, Eliminar), utiliza Route::resource en routes/web.php: | Para generar rutas para un CRUD (Crear, Leer, Actualizar, Eliminar), utiliza Route::resource en routes/web.php: | ||
Línea 69: | Línea 94: | ||
</pre> | </pre> | ||
Esto crea automáticamente rutas para todas las acciones del controlador. | Esto crea automáticamente rutas para todas las acciones del controlador. | ||
==== Route/API ==== | |||
En el archivo routes/api.php, define una ruta que utilice el controlador: | |||
<pre> | |||
use App\Http\Controllers\Api\UserController; | |||
// Ruta que utiliza el controlador UserController | |||
Route::get('/user/{id}', [UserController::class, 'show']); | |||
</pre> | |||
Cuando una solicitud GET se realiza a /api/user/{id}, el método show del UserController será invocado con el ID proporcionado. |
Revisión actual - 19:05 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
Route/WEB
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.
Route/API
En el archivo routes/api.php, define una ruta que utilice el controlador:
use App\Http\Controllers\Api\UserController; // Ruta que utiliza el controlador UserController Route::get('/user/{id}', [UserController::class, 'show']);
Cuando una solicitud GET se realiza a /api/user/{id}, el método show del UserController será invocado con el ID proporcionado.