0

Devise를 사용하고 있는데 사용자가 "log in with facebook"을 클릭하도록했습니다. 그들이 이것을 확인하면 등록 URL "http://0.0.0.0:3000/users/sign_up"으로 이동합니다.Devise에 Facebook UID를 저장하는 방법?

여기에 나는 페이스 북에서받은 것들로 이름과 이메일 필드를 채 웁니다. 이제 그들은 가입하기 위해 비밀번호를 선택하기 만하면됩니다. 또한 사용자의 Facebook UID와 Facebook URL을 저장하려고합니다.

사용자가 가입 버튼을 클릭하면 내 사용자 모델에 어떻게 전달합니까? (이 추가 필드를 포함하도록 모델을 업데이트했습니다.)

편집 : 현재 Ominauth에서 가져온 세션에 Facebook 해시 데이터를 저장하여 나중에 다시 가져올 수 있습니다.

답변

0

Omniauth에서 제공 한 인증 해시를 사용하면 사용자 정보를 검색 할 수 있습니다.

예를 들어 해시의 구조는 this입니다. 당신은 다음과 같은 사용자 정보를 당길 수 :

facebook_uid = user_auth.uid 
facebook_url = user.user_info.urls 
+0

나는 그들이 가입 클릭하면 내가 사용자와이를 넣어 어떻게 지금 ID와 URL을 얻을 수있었습니다 만. 나는 그들의 계정으로 그것을 저장하고 싶다. – Kevin

+0

당신은 해쉬 권한에 대한 액세스 권한이 있다고합니까? 원하는 데이터 값을 저장하려면 새 장치를 재정의하십시오. http://stackoverflow.com/questions/3546289/override-devise-registrations-controller –

+0

감사 드려요. – Kevin

관련 문제