No Laravel, o sistema de rotas é responsável por mapear URLs de solicitação para ações específicas em seu aplicativo. As rotas determinam quais métodos do controlador serão acionados quando uma solicitação é feita para uma URL específica. Isso permite que você defina facilmente a lógica do seu aplicativo para cada rota.
As rotas são definidas no arquivo routes/web.php
para rotas da web ou routes/api.php
para rotas da API. Vamos nos concentrar nas rotas da web.
Introdução ao sistema de rotas:
As rotas são definidas usando o método Route::
seguido pelo tipo de solicitação HTTP (como get
, post
, put
, delete
, etc.), seguido pela URL e, finalmente, o controlador e método que manipulará a solicitação.
As rotas podem ser definidas usando uma sintaxe de callback (encerramento) ou apontando diretamente para um controlador.
Exemplos de criação de rotas básicas em Laravel:
Aqui estão alguns exemplos de criação de rotas básicas em Laravel usando uma sintaxe de callback:
Route::get('/', function () {
return view('welcome');
});
Neste exemplo, definimos uma rota para a URL raiz '/'
, e quando um usuário acessa essa URL, ele retornará a view chamada 'welcome'
.
Route::get('/contact', function () {
return view('contact');
});
Aqui, definimos uma rota para a URL '/contact'
, e quando um usuário acessa essa URL, ele retornará a view chamada 'contact'
.
Route::get('/user/{id}', function ($id) {
return 'User ID: ' . $id;
});
Nesta rota, usamos um parâmetro {id}
para capturar o valor fornecido na URL. Por exemplo, quando um usuário acessa '/user/1'
, o retorno será 'User ID: 1'
.
Esses são apenas exemplos básicos para lhe dar uma ideia de como criar rotas em Laravel. À medida que seu aplicativo cresce, você pode criar mais rotas, usar controladores para organizar melhor sua lógica de aplicativo e usar recursos como middleware para adicionar autenticação, validações, etc.
Para criar rotas que apontam diretamente para um controlador, você pode usar a sintaxe Route::get('/url', 'NomeDoControlador@metodo')
. Por exemplo:
Route::get('/about', 'HomeController@about');
Neste exemplo, quando um usuário acessa '/about'
, o método about
do controlador HomeController
será acionado.