Rutas

  • Podemos considerar ejemplos como:
Route::get('user', function () {
 return 'hola mundo. Estamos en user';
});

//prueba esta ruta creando un formulario.
Route::post('user', function () {
 return 'hola mundo. Estamos en user, por el método POST';
});

//podemos usar parámetros
Route::get('user/{id}', function ($id) {
 return 'Preguntando por user' . $id;
});

//podemos usar parámetros opcionales
Route::get('book/{id?}', function ($id = "desconocido") {
 return 'Preguntando por el libro ' . $id;
});


Route::get('user/delete/{id}', function ($id) {
 return 'Baja de usuario, argumento id:' . $id;
});

//Podemos filtrar los argumentos con expresiones regulares
Route::get('user/{name}', function ($name) { 
    // name debe ser texto
}) ->where('name', '[A-Za-z]+'); 

Route::get('user/{id}', function ($id) { 
    //  id debe ser un nº. natural
}) ->where('id', '[0-9]+')
  • Podemos revisar la lista de rutas mediante artisan route:list

Rutas resource: REST

  • Si definimos rutas de tipo resource se mapearán las 7 acciones básicas asociadas a un recurso según 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: https://laravel.com/docs/5.3/controllers#resource-controllers
  • Definición de una ruta
    Route::resource('photos', 'PhotoController');
    
  • Creación de un controlador resource:

    php artisan make:controller PhotoController --resource
    
  • Mapeo de rutas y métodos:

    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

results matching ""

    No results matching ""