Melhor Permalinking para Rails
-
01-07-2019 - |
Pergunta
O que você acha que é a melhor maneira de criar URLs amigáveis ??SEO (dinamicamente) no Rails?
Solução
Substitua o método to_param
em suas classes de modelo para que o ID numérico padrão é substituído por um texto com sentido. Por exemplo, esta questão muito usos best-permalinking-for-rails na URL.
Ryan Bates tem um Railscast sobre este tema .
Outras dicas
ActiveSupport tem um novo método no Rails para ajudar este - String # parameterize. cometer o relevante é aqui ; o exemplo dado na mensagem de confirmação é "Donald E. Knuth" .parameterize => "donald-e-knuth"
Em combinação com a substituição to_param mencionado por John Topley, isso faz com que URLs amigáveis ??muito mais fácil.
de rsl stringex é bastante impressionante, pense nisso como permalink_fu feito para a direita .
Eu largamente usar to_param
como sugerido por John Topley.
Lembre-se de colocar índices de tal forma que o que você está usando em to_param é rapidamente pesquisável, ou você vai acabar com uma varredura completa da tabela em cada acesso. ( não uma performance-potenciador!)
Uma forma de contornar rápida é colocar a algum lugar ID lá, caso em que ActiveRecord irá ignorar o resto como cruft e basta pesquisar na id. É por isso que você vê um monte de sites Rails com URLs como http: // exemplo .com / someController / 123-a-meio legível pelo título .
Para mais detalhes sobre esta e outras observações de SEO da minha experiência com Rails, você pode encontrar desta página no meu site útil.
Para mim friendly_id funciona bem, ele pode gerar lesmas também, então você não precisa se importa sobre URLs duplicados, também são suportados âmbitos.
Confira o permalink_fu plug-in (extraído de Mephisto) ... o repositório Git é localizada aqui .
Eu fiz uma pequena e simples gem que torna mais fácil para substituir o método to_param. Ela pode ser encontrada aqui .