2013-07-15 2 views
2

제 작업 응용 프로그램에 django-facebook을 설치했지만 많은 문제가 발생합니다. 내가 장고 - 페이스 북 here의 설치를 따라했지만 제대로 구현할 수있게되지 않았습니다. 내가 페이스 북에 연결하려고 할 때 페이스 북/예에서 django-facebook 모델에 facebook 데이터를 삽입하지 않았습니다.

, 그것은 페이스 북의 자격 증명을 묻는 메시지를 표시하지만, 나는 다음과 같은 오류를 얻고로 다음 페이지로 리디렉션 할 수 없습니다입니다 :

user or profile didn't have attribute facebook_id

내가 관리 않았다 .py syncdb하지만 facebook 속성은 facebook/example에서 facebook에 연결 한 후 DB에 'null'로 남습니다.

나는 설명서로 내 코드에 다음을 추가 한 :

계정/model.py

from django.db import models 
from django.contrib.auth.models import User 
from django.db.models.signals import post_save 
from django_facebook.models import FacebookProfileModel 

class User_info(FacebookProfileModel): 
    user_id = models.ForeignKey(User) 
    dob = models.DateField(blank=True, null=True) 
    contact = models.IntegerField(max_length=20, blank=True, null=True) 
    avatar = models.ImageField(upload_to='user_images', default='user_images/root.jpeg', null=True, blank=True) 

def create_facebook_profile(sender, instance, created, **kwargs): 
    if created: 
     User_info.objects.create(user_id=instance) 

post_save.connect(create_facebook_profile, sender=User) 

settings.py

INSTALLED_APPS = (
'django.contrib.auth', 
'django.contrib.contenttypes', 
'django.contrib.sessions', 
'django.contrib.sites', 
'django.contrib.messages', 
'django.contrib.staticfiles', 
'django.contrib.admin', 
'django.contrib.admindocs', 
'account', 
'django_facebook', 
) 

TEMPLATE_CONTEXT_PROCESSORS =(
'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.core.context_processors.request', 
'django_facebook.context_processors.facebook', 
) 

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

FACEBOOK_APP_ID = 'xxxxxxxxxxxxx' 
FACEBOOK_APP_SECRET = 'xxxxxxxxxxxxxx' 

urls.py

urlpatterns = patterns('', 
url(r'^accounts/login/$', login, {'template_name': 'login.html'}), 
url(r'^accounts/logout/$', logout, {'next_page': '/accounts/login/'}, name='auth_logout',), 
url(r'^accounts/signup/$', account.views.register, name='signup'), 
url(r'^facebook/', include('django_facebook.urls')), 
) 

제발 도와주세요. 입니다. 감사.

답변

1

settings.py에서 AUTH_PROFILE_MODULE을 (를) 지정 했습니까?

AUTH_PROFILE_MODULE = "yourApp.User_info" 

그런 syncdb와 페이스 북 계정을 만들 : 넣어보십시오. 트릭을해야합니다.

관련 문제