可能在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')