如何使Rails中的Urls友好

时间:2010-10-01 13:31:29

标签: ruby-on-rails seo

我如何实现seo友好网址?

相反

http://mysite.com/articles/show/2

我想使用articlename而不是id

即。

mysite.com/articles/show/articlename

或以某种方式将id和articlename组合在一起

mysite.com/articles/show/articlename-2

我是铁杆新手,所以也许你可以给我一些简短的建议去哪里改变 什么代码的东西?

2 个答案:

答案 0 :(得分:1)

查看文章控制器,可能在app/controllers/articles.rb中。您可能有一个名为show的方法,它通过id查找文章,其中包含以下内容:

@article = Article.find(params[:id])

如果您知道该ID将成为帖子的标题而不是其ID,则可以使用

查找您的文章
@article = Article.find_by_title(params[:id])

这将允许您使用像/articles/show/This+is+the+title这样丑陋的网址。如果你想制作一个稍微好一点的URL,你可以在你的文章表中添加一个列(称为seo_title),以便将标题翻译成带有下划线的小写,产生类似this_is_the_title的内容。 / p>

答案 1 :(得分:0)

@and

你的问题既简单又困难。最好看看这个更成熟的Stack Overflow帖子找到你的答案:

https://stackoverflow.com/questions/723765/how-do-i-make-the-urls-in-ruby-on-rails-seo-friendly-knowing-a-vendor-name/

它有更多示例和更多选项。虽然find_by_title是一个选项,但它远非你最好的选择。