Rails的最佳永久链接
您认为在Rails中创建SEO友好URL(动态)的最佳方法是什么?
覆盖模型类中的to_param
方法,以便将缺省数字ID替换为有意义的字符串。 例如,这个问题在URL中使用了最好永久性的for-rails 。
Ryan Bates 就此话题进行了Railscast 。
ActiveSupport在Rails中有一个新方法来帮助它 – String#参数化。 相关提交在这里 ; 提交消息中给出的示例是“Donald E. Knuth”.parameterize =>“donald-e-knuth”
结合John Topley提到的to_param覆盖,这使得更友好的URL更容易。
rsl的stringex非常棒,把它想象为permalink_fu做得对。
我很大程度上使用了John to_param
建议的to_param
。
请记住放置索引,以便在to_param中使用的任何内容都可以快速搜索,或者您最终会在每次访问时进行全表扫描。 ( 不是性能增强器!)
一个快速的解决方法是将ID放在那里的某个地方,在这种情况下,ActiveRecord会将其余部分视为无用而只是搜索id。 这就是为什么你会看到很多带有http://example.com/someController/123-a-half-readable-title等url的Rails站点。
有关本次和其他搜索引擎优化观察的更多详细信息,我可能会发现我的网站上的这个页面很有用。
对于我来说,friendly_id工作正常,它也可以生成slu,所以你不需要关注重复的url,也支持范围。
查看permalink_fu插件(从Mephisto中提取)…… Git存储库位于此处 。
我创建了一个小而简单的gem,它可以更容易地覆盖to_param方法。 它可以在这里找到。