可能在Rails中创build这个redirect路线?

是否有可能在Rails应用程序的路线文件中做redirect?

具体来说,我想转发/j/e/javascripts/embed.js

现在唯一能做的就是创build一个带有e方法的j控制器,redirect到那个方法。

假设rails版本在3之前。

您可以创build一个新的RedirectController或者在现有的控制器中放置一个单独的function,以执行如下操作:

 map.js_embed '/j/e', :controller => :redirect_controller, :action => :some_function, :path => "embed" 

然后你的function会做到这一点:

 def some_function if params[:path] redirect_to "/javascripts/#{params[:path]}.js" end end 

或者是为了这个效果

使用Rails 3,你可以在routes.rb文件中redirect。

 match "/posts/github" => redirect("http://github.com/rails.atom") 

在Rails 4中:(谢谢@dennis)

 get '/stories', to: redirect('/posts')