2013-04-27 92 views
1

我有一个网站显示用户的Twitter帖子。目前,当您搜索的索引页上他们的名字就带你到这个网址Rails - 路由到SEO友好页面

http://127.0.0.1:3000/user?utf8=%E2%9C%93&username=neiltyson&commit=Search 

我将如何缩小这个URL所以它只是

http://127.0.0.1:3000/user/neiltyson 

回答

0

编辑config/routes使用此:

get "user/:username" => "user#search" 

,然后在app/controller/users_controller.rb

def search 
    @user = User.find_by_username(params[:username]) 
    respond_to do |format| 
     format.html { redirect_to(@user) } # redirect to user#show action 
    end 
end 
+0

'find_by'只返回1个对象,'first'会打破它不是吗? – 2013-04-28 01:50:51

+0

你是对的!感谢您指出了这一点! :) – Tilo 2013-04-28 04:04:01