Rotas Rails: fundamentos
O curso trata de como uma app Rails decide a quais URLs responde. Começa pelo config/routes.rb e pelo bloco draw que guarda toda rota. Depois mostra rotas escritas à mão, com verbo HTTP, padrão de URL e action de controller, incluindo segmentos dinâmicos. As aulas seguintes cobrem o resources e as opções only: e param:, rotas nomeadas com helpers _path e _url, a rota root única e a leitura da lista completa com bin/rails routes. A última aula segue uma rota por todas essas ideias.
O que você vai aprender
- ✓Como o config/routes.rb e o bloco draw ligam requisições a actions
- ✓Escrever rotas com get, post, patch e delete, e usar segmentos dinâmicos
- ✓Gerar rotas RESTful com resources, reduzidas por only: e param:
- ✓Rotas nomeadas e a diferença entre os helpers _path e _url
- ✓Declarar a rota root e por que só pode existir uma
- ✓Listar e filtrar rotas com bin/rails routes e grep
config/routes.rb: o mapa de pontos de entrada
Em Console Rails (IRB), o app.get "/articles/1" só funcionou porque já existia uma entrada correspondente em algum lugar. Esse lugar é o config/routes.rb, o arquivo que decide a quais URLs uma app responde e qual action de controller atende cada uma.
Ler a aula completa grátis →Currículo
7 aulasconfig/routes.rb: o mapa de pontos de entrada
Apresenta o config/routes.rb, o arquivo com que a requisição precisa casar antes de qualquer controller rodar.
Escrevendo uma rota de cada vez
Escreve rotas avulsas com verbo, padrão de URL e action, e apresenta segmentos dinâmicos como :username.
resources: sete rotas, recebidas
Explica como o resources gera sete ações em oito entradas de rota, e como only: e param: mudam isso.
Rotas nomeadas: helpers _path e _url
Usa o as: para nomear rotas e gerar helpers _path e _url, mudando uma URL num lugar só.
A rota raiz
Declara a rota root para uma barra pura e mostra o erro na subida causado por um segundo root.
Vendo toda rota de uma vez: bin/rails routes
Lê as quatro colunas da saída do bin/rails routes, o segmento opcional (.:format) e o filtro com grep.
Juntando tudo: uma requisição, rastreada
Segue a rota partners por todas as aulas e mostra onde o roteamento entrega a requisição ao controller.