Enrutamiento

icon picker
Routes y Controller

Rutas y controladores

Las rutas anónimas son útiles para pequeñas tareas y pruebas.
Pero un trabajo serio necesita el uso de controladores (MVC)
use App\Http\Controllers\UserController;

//ruta prueba gestionada por el método "index" de PruebaController

Route::get('/photos', [PhotosController::class, 'index']);

Rutas resource: REST

Un CRUD necesita definir 7 rutas para 7 acciones.
Lectura: ruta de listado y de detalle
Creación: mostrar formulario de alta y procesarlo
Update: mostrar formulario de edición y procesarlo
Borrado
Route::get('photos/create', 'Photos\AdminController@create');
Route::post('photos', 'Photos\AdminController@store');
Route::get('photos', 'Photos\AdminController@index');
Route::get('photos/{id}', 'Photos\AdminController@show');
Route::get('photos/{id}/edit', 'Photos\AdminController@edit');
Route::put('photos/{id}', 'Photos\AdminController@update');
Route::delete('photos/{id}', 'Photos\AdminController@destroy');
Si definimos rutas de tipo resource se mapearán estas 7 rutas.
En la medida de lo posible estas rutas siguen el paradigma REST.
Son las acciones necesarias para un CRUD completo y usando los distintos verbos HTTP: get, post, put y delete.
Para ver como gestionar estas rutas y este tipo de controladores:
Definición de una ruta
Route::resource('photos', 'PhotoController');
Creación de un controlador resource:
php artisan make:controller PhotoController --resource
Lista de rutas:
Verb URI Action Route Name
GET /photos index photos.index
GET /photos/create create photos.create
POST /photos store photos.store
GET /photos/{photo} show photos.show
GET /photos/{photo}/edit edit photos.edit
PUT/PATCH /photos/{photo} update photos.update
DELETE /photos/{photo} destroy photos.destroy

Want to print your doc?
This is not the way.
Try clicking the ⋯ next to your doc name or using a keyboard shortcut (
CtrlP
) instead.