3

注:スラッシュ (/) を含むパラメーターを使用した Rails ルーティングからのアドバイス

私にはうまくいかないようです...

私のルートは次のようになります:

get '/r/*code_or_url' => 'pixels#visit', :as => :visit, :format => false, :constraints => {:url => /.*/}, :escape => false

しかし、私が行くなら

http://localhost:3000/r/http://www.google.com

そうですか:

[GET] "/www.google.com" に一致するルートはありません

私のURLバーは

http://localhost:3000/www.google.com

私のpixels_controller.rbは次のようになります

def visit
  @code_or_url = params[:code_or_url]
  redirect_to @code_or_url
end

ログのパラメータは次のとおりです。

Parameters: {"escape"=>false, "code_or_url"=>"http:/www.google.com"}

今のところ、私が好きなことをするために見つけた唯一の方法は次のとおりです。

request.original_fullpath[3..-1]

他のすべては元の要求を解体します

4

0 に答える 0