是否可以在Rails应用程序的路径文件中进行重定向?
具体来说,我想将/j/e
转发给/javascripts/embed.js
现在我能想到的唯一方法就是使用j
方法创建一个e
控制器,重定向到该控制器。
答案 0 :(得分:159)
使用Rails 3,您可以在routes.rb文件中重定向。
match "/posts/github" => redirect("http://github.com/rails.atom")
在Rails 4中:(感谢@dennis)
get '/stories', to: redirect('/posts')
答案 1 :(得分:6)
假设3之前的rails版本。
您可以在现有控制器中创建新的RedirectController
或将单个功能收起来,执行以下操作:
map.js_embed '/j/e',
:controller => :redirect_controller,
:action => :some_function,
:path => "embed"
然后你的功能会这样做:
def some_function
if params[:path]
redirect_to "/javascripts/#{params[:path]}.js"
end
end
或者那种效果。
答案 2 :(得分:0)
您可以将根路径重定向到外部网站:
root to: redirect('https://www.lucascaton.com.br/en')