2013-05-12 64 views
0

我试图让django-facebook按照 https://github.com/tschellenbach/Django-facebook的自述文件中给出的指令工作。我是django的新手。让django-facebook工作

看起来很简单,但我面临以下问题。我无法让它工作。

在自述中它表示AUTH_USER_MODEL = 'member.FacebookUser'。我猜测正确的选择是 AUTH_USER_MODEL = 'django_facebook.FacebookUser' 进口车型之后 - 这我花了一些吨甚至做出这样的转变后,执行syncdb抛出一个错误,指出:

FacebookUser does not have a USERNAME_FIELD

无法解决,我决定使用默认的用户模型 - auth.user。这工作,我能够加载Facebook /示例。从Facebook的身份验证后,但是,我得到一个错误

你需要设置AUTH_PROFILE_MODULE在您的项目设置

所以我添加AUTH_PROFILE_MODULE = 'django_facebook.FacebookProfile'

现在它返回一个新的错误 -

FacebookProfile匹配查询不存在。查找参数为{ '用户_ ID _exact':2L}

我现在应该怎么办?

回答

0

执行python manage.py syncdb或者需要做的任何事情来用新表(facebook_profile)更新数据库模式。

此外,你不提,但我有和使用django_facebook应用程序,我有我的settings.py文件是这样的:

TEMPLATE_CONTEXT_PROCESSORS = (
    ... 
    'django_facebook.context_processors.facebook', 
    ... 
    ) 

AUTHENTICATION_BACKENDS = (
    ... 
    'django_facebook.auth_backends.FacebookBackend', 
    ) 

我希望它能帮助

+0

嘿保罗,感谢您的回复。这些设置我添加到settings.py,并且我运行了syncdb。 我不明白的是 - 'member.FacebookUser'是什么意思?这显然是一个错误吗? 其次我用我的管理后端。这不意味着我已经安装了用户身份验证吗? – 2013-05-17 19:22:17

+0

'member.FacebookUser'可能是文档中的错误,也可能是文档示例使用覆盖'FacebookUser'的应用程序_member_,所以这就是为什么它使用这个。你有没有设法让应用程序去?它给了我一些麻烦,直到我终于做到了。如果你需要更多的帮助,请告诉我。 – 2013-05-17 20:12:24

+0

嘿保罗,我设法得到它的工作...终于...我有auth安装,因为我使用管理后端..所以这是问题..再加上我没有完全理解如何用户身份验证工作..所以我挖掘了[djangobook-chapter14](http://www.djangobook.com/en/2.0/chapter14.html)和[扩展现有用户模型](https://docs.djangoproject.com/en/dev/主题/身份验证/定制/#扩展现有用户模型)端到端..实施这些东西,它已经开始工作..谢谢你提供帮助..! – 2013-05-18 21:32:27