2010-12-11 8 views
1

무슨 뜻입니까? redirect_to ""and returnruby ​​on rails redirect_to

+0

참조 이러한 관용구는 부울'and'의 단락 평가에 활용하는 것도 http://guides.rubyonrails.org/layouts_and_rendering.html#using-redirect_to – Zabba

답변

5

레일 API 문서에 따르면 반환 부분은 다른 것의 실행을 중지합니다. 다른 말로하면 아래에있는 경우 return 문으로 인해 텍스트가 인쇄되지 않습니다. 다음 예제 and return에서

def go_home 
    redirect_to(:action => "home") and return 
    puts "This will never print" 
    end 

if monkeys.nil? 사실이라고합니다.

def do_something 
    redirect_to(:action => "elsewhere") and return if monkeys.nil? 
    render :action => "overthere" # won't be called if monkeys is nil 
    end 

에서 : http://api.rubyonrails.org/classes/ActionController/Base.html

+0

참고 표현. 'redirect_to'가'false'를 반환하면, Ruby는 단락 회로를 가져와 나머지 표현식을 평가하지 않습니다; 그러나,'redirect_to'가'true'를 반환한다면, 표현식의 나머지는 평가되어야합니다. 나머지는'return'이므로 전체 표현식의 효과는 "리디렉션 (302) 코드를 발행하고 이것이 실제로 발생하면 다른 조치를 취하지 않고 복귀"입니다. –