2013-02-17 2 views
0

사용자가 페이스 북 계정을 사용하여 등록 할 수있는 웹 응용 프로그램을 만들고 있습니다. 나는 장고 페이스 북을 사용하여 새로운 사용자의 인증/등록을하고있다. 나는 userena 대신 django 등록을 사용하여 가장 간단한 설정이라고 생각하는 것을 시도하고있다. 내 Facebook 계정을 사용할 때 모든 것이 잘 작동합니다. 앱에 내 프로필에 대한 액세스 권한을 허용하고, 새로운 계정이 auth_user 테이블에 만들어지고 로그인되어 있는지 확인하도록 요청 받았습니다.장고 - 페이스 북이 페이스 북 테스트 사용자로 로그인하지 않았습니다

나는 페이스 북에 테스트 사용자로 로그인하고 있는데, 앱을 허용 한 다음 facebook/login/facebook_login = 1로 리디렉션되었다는 것을 확인했습니다. facebook_login = 1 & 시도 = 1 & 코드 = AQBM0-z ...... 새 계정이 만들어지지 않습니다.

그것은 전체 문제처럼 보인다
TEMPLATE_CONTEXT_PROCESSORS = (
    'django_facebook.context_processors.facebook', 
    'django.contrib.auth.context_processors.auth', 
    'django.core.context_processors.debug', 
    'django.core.context_processors.i18n', 
    'django.core.context_processors.media', 
    'django.core.context_processors.static', 
    'django.core.context_processors.tz', 
    'django.contrib.messages.context_processors.messages', 
) 

MIDDLEWARE_CLASSES = (
    'django.middleware.common.CommonMiddleware', 
    'django.contrib.sessions.middleware.SessionMiddleware', 
    'django.middleware.csrf.CsrfViewMiddleware', 
    'django.contrib.auth.middleware.AuthenticationMiddleware', 
    'django.contrib.messages.middleware.MessageMiddleware', 
) 

AUTHENTICATION_BACKENDS = (
    'django_facebook.auth_backends.FacebookBackend', 
    'django.contrib.auth.backends.ModelBackend', 
) 

FACEBOOK_APP_ID = NNN 
FACEBOOK_APP_SECRET = NNNN 
FACEBOOK_REGISTRATION_BACKEND ='django_facebook.registration_backends.FacebookRegistrationBackend' 

AUTH_PROFILE_MODULE = 'django_facebook.FacebookProfile' 

답변

1

가 장고 - 페이스 북은 페이스 북의 데이터로부터 긴 이메일을 제거하는 것입니다 : 여기

내 관련 설정입니다. 이렇게하면 인증자가 계정을 만들 수 없게됩니다.

난 그냥 api.py에서 다음 줄을 주석

if len(user_data.get('email', '')) > 75: 
    #no more fake email accounts for facebook 
    del user_data['email'] 
관련 문제