Como definir rotas no Symfony 4

Walderlan Sena
2 min readMar 17, 2019

--

Entendo como funciona o processo de criação de rotas no symfony e como utilizar parâmetros, barras opcionais.

“Rotas podem ser configuradas em YAML, XML e PHP. Todos os formatos fornecem os mesmos recursos e desempenho, então escolha o que você preferir.” — symfony.com

Nesse exemplos vamos utilizar o YAML, todavia os parâmetros utilizados aqui são equivalente para os outros tipos disponibilizados pelo symfony.

Estrutura incial do symfony 4

Primeiramente vamos instalar o symfony o seguinte comando:

symfony new project
Processo de instalação básica do symfony skeleton.

Com a instalação concluída temos umas estrutura de diretórios mais simplificada agora no symfony 4, e vamos definir nossa rotas dentro do diretório config/

Definindo nossas rotas

Para definirmos nossa rotas criamos um controller chamando HomeController, e definindo uma action chamada index, que agora no symfony 4 já não se faz necessário adicionar a palavra reservada action.

# config/routes.yaml
home:
path: /site
controller: App\Controller\HomeController::index
blog_show:
path: /blog/{slug}
controller: App\Controller\BlogController::show

Roteamento localizado (i18n)

As rotas podem ser localizadas para fornecer caminhos exclusivos por localidade. O Symfony fornece uma maneira prática de declarar rotas localizadas sem duplicação.

# config/routes.yaml
about_us:
path:
nl: /over-ons
en: /about-us
controller: App\Controller\HomeController::about

Adicionando {wildcard} Requirements

Como adicionar barras opções com o wildcards

# config/routes.yaml
blog_list:
path: /blog/{page}
controller: App\Controller\BlogController::list
requirements:
page: '[^/]+'

Referência e Documentação oficial

https://symfony.com/doc/current/routing.html

Até mais :)

--

--

Walderlan Sena

Systems Analyst and Developer, Security Analyst, Writer, Speaker, Enthusiast IoT, SI. PHP Evangelist, CEO of the company @mentesvirtuaissena