Laravel 5.5 nos trae un par de accesos directos bastantes convenientes a la clase de Router de Laravel que elimina la necesidad de crear un controlador o clousure solo para devolver una vista simple o redirigir. Si los extrañó en las notas de la versión, demos un vistazo de manera breve, seguramente simplificarán el código y eliminarán un par de archivos.
El método Route::view
El metodo Route::view elimina la necesidad de crear rutas que unicamente regresen una vista. En lugar de usar una función anónima (clousure) o un metodo de un controlador, se puede definir la ruta y el directorio donde se encuentra la vista.
1 2 | // resources/views/pages/about.blade.php Route::view('/about', 'pages.about'); |
Se puede pasar un array de variables que se necesiten en la vista:
1 | Route::view('/about', 'pages.about', ['year' => date('Y')]); |
El método Route::redirect
El método Route::redirect elimina la necesidad de crear un clousure o un controlador que unicamente retornen una re-dirección.
1 | Route::redirect('/old-about', '/about'); |
El tercer argumento que viene por defecto, si no se pasa, es un re-direccionamiento 301. Sin embargo, se puede pasar el tercer argumento para un código de estado diferente. Por ejemplo, si desea crear un re-direccionamiento temporal 307, se vería así:
1 | Route::redirect('/old-about', '/about', 307); |
Mas información
Laravel 5.5 está lleno de nuevas funciones geniales. Puede obtener más información visitando nuestra cobertura de Laravel 5.5 y las notas de la versión oficial.