Railsアプリのroutesファイルでリダイレクトを行うことは可能ですか?
具体的には、/j/e
から/javascripts/embed.js
今のところ、私がそれを行うことができると思う唯一の方法は、それにリダイレクトするj
メソッドでe
コントローラーを作成することです。
Railsバージョン3.より前の場合.
新しい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
またはその効果のための何か。
In Rails 4 and 5:(ありがとう@dennis)
get '/stories', to: redirect('/posts')
Rails 3では、routes.rbファイル内でリダイレクトできます。
match "/posts/github" => redirect("http://github.com/Rails.atom")
ルートパスを外部Webサイトにリダイレクトできます。
root to: redirect('https://www.lucascaton.com.br/en')