내가 기본 URL (myapp_url)로 리디렉션을 위해 무엇을 가지고 원래의 요청 URL로 리디렉션합니다. 하지만 리디렉션을 변경하여 인증 후에 사용자가 URL을 요청한 것으로 이동하려고합니다. 어떻게하면됩니까? 나는 여기에서 검색에서 몇 가지 옵션을 시도했다. 그러나 가지 마라.루비 레일 - 여기서
사용자는 인증 로그인 사용자가 원래의 요청 URL로 리디렉션되어야 다음 후, 로그인 페이지로 리디렉션됩니다없는 경우 URL을 입력합니다.
내가 기본 URL (myapp_url)로 리디렉션을 위해 무엇을 가지고 원래의 요청 URL로 리디렉션합니다. 하지만 리디렉션을 변경하여 인증 후에 사용자가 URL을 요청한 것으로 이동하려고합니다. 어떻게하면됩니까? 나는 여기에서 검색에서 몇 가지 옵션을 시도했다. 그러나 가지 마라.루비 레일 - 여기서
사용자는 인증 로그인 사용자가 원래의 요청 URL로 리디렉션되어야 다음 후, 로그인 페이지로 리디렉션됩니다없는 경우 URL을 입력합니다.
인증시 리디렉션 전에 경로를 저장하고 인증 성공 후이 경로로 리디렉션해야합니다.
이것을 시도했지만 행운이 없습니다. 'session [: return_to] || = request.referer'' redirect_to session [: return_to]' –
당신은 당신이 쉽게 구현할 수있는 방법을 보려면 마이클 하틀로 "레일 튜토리얼에 루비"에 the chapter about "Friendly forwarding"를 읽을 수 있습니다. 위치를 설정하지 않을 경우, 세션에 저장된 위치로 사용자를 리디렉션 또는 세션
redirect_back_or(url)
의 위치를 원하는 사용자를 저장하는
store_location
: 은 기본적으로 당신은 3 개 헬퍼 메소드를 정보의 조각을 지우려면 redirect_back_or
방법으로 "내부적으로"사용 url
방법 PARAM
clear_return_to
에 포함 된 한 번store_location
을 필요로하는 페이지에 액세스하려고 볼 때 A) : 6,
그리고는 이러한 방법을 사용합니다. 사용자가 로그인
B)는, 당신은 물론 현재는)
이이 일, 당신은 아이디어를 얻을 방법에 대한 개요 인 경우 (오른쪽 위치로 그를 리디렉션 redirect_back_or(url)
를 사용하지만 나는 그것을 읽을 제안 구현 (몇 가지) 세부 정보 장.
게시물 요청으로 이것을 구현할 수 있습니까? 제출하기 전에 양식을 제출하고 세션이 만료되었다고 가정 해보십시오. Michael Hartles 예제는 라우팅 오류를 일으 킵니다. 레일스는 로그인 한 후 Rails가 요청을 시도 할 것이라고 생각합니다. 예를 들어, 게시물 아래에 주석이 중첩되어 있고 게시물 # 쇼에서 의견 제출이 이루어지는 '게시물'과 '의견'이 있다고 가정 해보십시오. 로그 인한 후의 결과 URL은 라우팅 오류를 일으키는'app.com/posts/1/comments'이며 요청이 POST 일 경우에는 그렇지 않습니다. – Mohamad
리디렉션은 브라우저에서 GET 요청으로 전송됩니다. POST로 리다이렉트 (redirect) 할 브라우저가 있어도 원본 양식 제출 데이터는 제공되지 않습니다. – kgilpin
답변의 튜토리얼 링크가 죽었습니다. 업데이트 된 링크는 다음과 같습니다. https://www.railstutorial.org/book/_single-page#sec-friendly_forwarding – Nilloc
솔루션을 찾았습니까? –
@ Aldo'xoen'Giambelluca - 아직 없습니다. –
이 솔루션은 나를 위해 일했습니다 : http://stackoverflow.com/questions/9835365/devise-how-to-redirect-to-different-page-based-on-some-parameter-after-sign-in – rassom