2016-08-29 1 views
-1

그래서 나는이 깔끔한 것을 Zapier의 login page에서 발견했습니다. 잘못된 자격 증명을 입력하고 '로그인'을 클릭하면 페이지를 다시로드하지 않고도 '잘못된 이메일 또는 비밀번호'오류가 표시됩니다. 이것이 어떻게 이루어지고 있습니까? 그리고 Devails로 레일즈 앱에서 어떻게 복제 할 수 있습니까? 여기로그인 페이지에서 페이지를 다시로드하지 않고 사용자 자격 증명이 올바른지 확인하십시오. [레일즈]

+2

기본적으로 채워진 정보 (사용자 이름 // 암호)를 컨트롤러에 보낼 비동기 요청을 작성하기 위해 일종의 JavaScript를 사용해야합니다. 반환 된 컨트롤러는 정보를 평가하고 일종의 값을 반환합니다 (기본적으로 사용자에게 달려 있음). 대답에 따라 오류 (잘못된 사용자 이름 // 암호)를 표시하거나 사용자를 기록하고 더 리디렉션합니다. 귀하의 질문은 기본적으로 _the_ 답변을 제공하기에는 너무 광범위합니다. –

+0

@PhilippMeissner 그건 실제로 _the_ 답변 :) 그냥 어떻게 작동하는지에 대한 간략한 개요를 찾고 있었다; 나머지는 스스로 해결할 수 있습니다. 마음에 들지 않으면 답변으로 게시하여 해결 된 것으로 표시 할 수 있습니다! – Arif

+0

좋아, 할거야 :) 그럼에도 불구하고 내가 도울 수있어서 기뻐요! –

답변

1
코드를 제공하지 않고

, 오히려 일반적인 대답, 당신이가는 :

비동기 요청을 만들려면, 당신은 기본적으로 자바 스크립트의 일종으로 후크 할 (jQuery를, AngularJS와, ...) Ruby on Rails Controller에 비동기 요청 (키워드 : AJAX)을 발행한다. 컨트롤러를 평가할 매개 변수로 사용자 이름/암호를 반드시 포함해야합니다.) 입력 된 정보 및 원하는 동작에 따라 컨트롤러가 json으로 응답하는 컨트롤러 (이미 render json: true, status: 200과 같은 간단한 작업이 이미 수행되어 있어야합니다.) 그러면 클라이언트 측에서 다시 평가하여 오류를 표시하거나 사용자를 더 이상 리다이렉트합니다.

이 튜토리얼은 방법에 당신을 도울 수 있습니다 https://hackhands.com/sign-users-ajax-using-devise-rails/

행운을 빕니다!

관련 문제