2013-04-27 91 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