我如何在 rails 中获得 twitter/friendfeed 之类的主页网址?
Posted
技术标签:
【中文标题】我如何在 rails 中获得 twitter/friendfeed 之类的主页网址?【英文标题】:How do I get twitter/friendfeed like home urls in rails? 【发布时间】:2010-12-01 09:53:35 【问题描述】:我希望能够拥有像 http://twitter.com/username 这样的友好 URL 的 Twitter。如何在铁轨上实现这一点?
【问题讨论】:
【参考方案1】:可能最简单的方法是在路由表底部设置一条包罗万象的路由。比如:
map.connect '/:slug', :controller => 'users', :action => 'show'
然后在用户控制器中......
def show
@user = User.find_by_username(params[:slug])
end
我还建议捕获 ActiveRecord::RecordNotFound
以显示 404 页面。你可以在ApplicationController
:
rescue_from ActiveRecord::RecordNotFound, :with => :not_found
然后定义一个方法not_found
来渲染一个错误页面什么的。
【讨论】:
【参考方案2】:您可以使用friendly_id gem。
【讨论】:
很酷。但是我一直在寻找不暴露控制器的东西。就像作为问题描述的一部分给出的示例一样。以上是关于我如何在 rails 中获得 twitter/friendfeed 之类的主页网址?的主要内容,如果未能解决你的问题,请参考以下文章
Rails 4 - 如何获得 <li> 单击以在另一个 <div> 中显示部分视图?