我希望能够有像http://twitter.com/username这样友好的网址推特。如何在rails中做到这一点?
发布于 2009-09-25 13:16:07
最简单的方法可能是在路由表的底部设置一个包含所有路由的路由。类似于:
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
来呈现错误页面或其他内容。
发布于 2009-09-25 12:38:04
您可以使用friendly_id gem。
https://stackoverflow.com/questions/1477021
复制相似问题