我們最近將我們網站上的產品名稱從'bracelets'更改爲'wristbands',並且需要保留舊的路線以實現SEO目的。Ruby on Rails重定向如何在路徑文件中傳遞參數
從本質上講,這些路線
www.hostname.com/products/bracelets/series-1/
www.hostname.com/products/bracelets/series-1/small-purple
應路線
www.hostname.com/products/wristbands/series-1/
www.hostname.com/products/wristbands/series-1/small-purple
我讀了這裏的教程http://guides.rubyonrails.org/routing.html#redirection看起來像我會使用塊語法,但我仍然不知道如何正確地執行路線。我期待着更多地瞭解路線文件,所以任何信息都會很棒。在此先感謝
match "/bracelets/:name" => redirect {|params| "/wristbands/#{params[:name]}" }
編輯:
好,我一直在玩它了一下,這裏是它如何工作什麼我都試過
match "/products/bracelets/:name/:name2" => redirect {|params| "/products/wristbands/#{params[:name].pluralize}/#{params[:name2].pluralize}" }
輸入網址: 本地主機:3000 /產品/手鐲/系列-1 /小紫色
輸出URL:升ocalhost:3000 /產品/腕帶
錯誤消息:無效的產品:系列1
(所以匹配工作,但重定向沒有)
如果我改變了比賽檢查PARAMS這樣的:
我得到如下:
/products/wristbands/{:name=>"series-1", :name2=>"small-purple"}
所以看起來它是不承認的第二個斜槓「/」什麼的。有任何想法嗎?
你能解釋一下它是如何與你已經嘗試過什麼工作的權利嗎? – oldergod
我添加了一些細節,謝謝,有什麼想法? – ruevaughn