7

我想在 routes.rb 中更改我现有的“游戏”路由,但由于 SEO,我还需要为旧链接设置 301 重定向。

我的旧路由:

match 'games/:permalink/:id/(:page)' => 'games#show'

新路由:

match 'gierki/:permalink/(:page)' => 'games#show'

这是我试图做的重定向:

match 'games/:permalink/:id/(:page)' => redirect {|params| "/gierki/#{params[:permalink]}" + params[:page].nil? ? "" : "/#{params[:page]}" }

上面的重定向不起作用,这是一个错误:

wrong number of arguments (1 for 2)
4

1 回答 1

9

尝试像这样:

match 'games/:permalink/:id/(:page)' => redirect {|params,request| "/gierki/#{params[:permalink]}" + params[:page].nil? ? "" : "/#{params[:page]}" }

看看它是否有效。

于 2012-05-30T11:48:19.417 回答