2011-09-13 2 views
0

이것은 매우 간단한 질문 일 수 있지만 여기 내 목표는 내 응용 프로그램의 다른 부분으로 리디렉션하고 매개 변수를 자신있게 전달하는 것입니다.리디렉션을 통해 Rails에서 인코딩 된 매개 변수를 어떻게 전달합니까?

지금은 : mobile 및 : content 매개 변수를 "/ xxx"에서 "/ yyy"로 전달하고 싶습니다.

매개 변수 "/ XXX"로 깨끗하고 잘 와서,하지만 난 현재 그래서처럼 전달하고이 작업에도 불구하고

redirect_to "/yyy?mobile=#{params[:mobile]}&content=#{params[:content]}" 

,이 인코딩 문제를 갖고있는 것 같아요. 공백은 "% 20"으로 표시되고 "+"가 아니라 일반적으로 더러워 보입니다.

+1

이 왜 경로 도우미를 사용하지 않은 따르 자세한 내용은

redirect_to yyy_path(:mobile => params[:mobile], :content => params[:content]) 

:

그래서 당신은 routes.rb에 경로를 설정해야합니다 다음과 같은 경로를 사용할 수 있습니까? 나는 그런 길을 만드는 것이 레일에서 나쁜 습관이라고 생각합니다. – antonversal

+0

예, 슬프게도 이건 고무 밴드 수정이었습니다. 경로 도우미를위한 리소스가 있습니까? –

+0

내 대답을보세요 – antonversal

답변

3

당신은 url_encode 방법, 예를 사용할 수 있습니다

redirect_to url_encode("/yyy?mobile=#{params[:mobile]}&content=#{params[:content]}") 

을하거나 매개 변수를 redirect_to를 사용

내가 코멘트는 경로를 만드는 말했듯
redirect_to :action => 'toto', :param_1 => 'titi', :param_2 => 'tata' 
+0

+1 매개 변수를 사용하여 redirect_to – klochner

관련 문제