0 Compartilhamentos 310 Views 1 Comments

Url’s amigáveis em Ruby on Rails com a gem Friendly_id

19 de novembro de 2012

Nos últimos dias venho me aventurando pelo Framework Rails e tenho gostado muito principalmente pela maturidade do Framework e pela praticidade da linguagem Ruby, bem mas isso é assunto para outro post.

No decorrer do desenvolvimento de um site, senti a necessidade de gerar algumas URL’s amigáveis, por padrão o Rails gera URL’s nesse modelo: http://meusite/posts/1, ou seja, identificando um registro pelo seu Id na URL, vamos concordar que isso não é nem um pouco interessante nem para o usuário final e nem para os motores de busca, eu precisava de um resultado parecido com esse: http://meusite/um-exemplo-de-post, foi ai então que resolvi buscar um solução para isso.

Logo nos primeiros resultados percebi que muitos desenvolvedores tomam o caminho mais fácil para lidar com URL’s amigáveis, eles usam o Id do registro seguido por um hífen e alguma sequencia de caracteres após o hífen geralmente algo como o titulo no caso de uma noticia ou post de blog, obtendo um resultado parecido com esse: http://meusite/posts/1322-um-exemplo-de-post.

Essa forma geralmente é utilizada com o método do Ruby to_i que basicamente converte uma string para um inteiro removendo quaisquer caracteres não numéricos. No controller teríamos algo assim:

#http://meusite/posts/1322-um-exemplo-de-post

É uma solução pratica mas na minha opinião a url ainda não está tão amigável assim, veja que ainda existe o Id do post no inicio da url o que a torna difícil de memorizar, e deixa a url com um numero inútil para os motores de busca. Para resolver isso encontrei a gem friendly_id que faz esse trabalho de forma simples:

Em seu gemfile coloque o seguinte código:

Então execute os seguintes comandos:

Feito isso teremos a gem friendly_id instalada em nosso projeto, o próximo passo é adicionar o seguinte código ao model no qual você quer utilizar url’s amigáveis:

E pronto! Agora é só rodar seu projeto e ver mágica. O friendly_id tem mais algumas configurações que podem ser encontradas na sua documentação no github.

Carregando...

Você pode se interessar

Promoções de Jogos do Final de Semana (10/07)
Notícias
6 visualizações
Notícias
6 visualizações

Promoções de Jogos do Final de Semana (10/07)

Carlos L. A. da Silva - 10 de julho de 2020

Confira as melhores ofertas de jogos de PC para o final de semana.

Conheça Silq: a primeira linguagem criada para popularizar a programação quântica
Artigos
13 visualizações
Artigos
13 visualizações

Conheça Silq: a primeira linguagem criada para popularizar a programação quântica

Carlos L. A. da Silva - 6 de julho de 2020

Time de quatro pesquisadores do Instituto Federal de Tecnologia (ETH) de Zurique, na Suíça, quebrou paradigmas e está prestes a escancarar as portas da computação quântica.

Promoções de Jogos do Final de Semana (03/07)
Notícias
19 visualizações
Notícias
19 visualizações

Promoções de Jogos do Final de Semana (03/07)

Carlos L. A. da Silva - 3 de julho de 2020

Confira as melhores ofertas de jogos de PC para o final de semana.

One Response

Deixe um Comentário

Your email address will not be published.

Mais publicações

Como plugar um dispositivo USB corretamente… de primeira!
Dicas
20 visualizações
20 visualizações

Como plugar um dispositivo USB corretamente… de primeira!

Carlos L. A. da Silva - 3 de julho de 2020
Microsoft está mapeando o planeta inteiro para simulador de voo
Artigos
26 visualizações
26 visualizações
Promoções de Jogos do Final de Semana (26/06)
Notícias
25 visualizações
25 visualizações

Promoções de Jogos do Final de Semana (26/06)

Carlos L. A. da Silva - 26 de junho de 2020
Os 10 melhores plugins de formulário para WordPress em 2020
Artigos
26 visualizações
26 visualizações

Os 10 melhores plugins de formulário para WordPress em 2020

Carlos L. A. da Silva - 26 de junho de 2020