使用 django-allauth
问题描述
我在使用 django-allauth 时遇到问题.我收到这个错误.
i am having trouble using django-allauth. I am getting this error.
NoReverseMatch 在/accounts/login/未找到带有参数()"和关键字参数{}"的facebook_channel"的反向操作.
NoReverseMatch at /accounts/login/ Reverse for 'facebook_channel' with arguments '()' and keyword arguments '{}' not found.
到目前为止,我已经完全遵循了一切.
So far I have followed everything to the letter.
这是我的 settings.py
here is my settings.py
INSTALLED_APPS = (
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.sites',
'django.contrib.messages',
'django.contrib.staticfiles',
# Uncomment the next line to enable the admin:
'django.contrib.admin',
# Uncomment the next line to enable admin documentation:
# 'django.contrib.admindocs',
'app',
'uni_form',
'emailconfirmation',
'allauth',
'allauth.account',
'allauth.socialaccount',
'allauth.socialaccount.providers.facebook',
'allauth.socialaccount.providers.twitter',
)
TEMPLATE_CONTEXT_PROCESSORS = (
"django.core.context_processors.request",
"allauth.context_processors.allauth",
"allauth.account.context_processors.account",
"django.contrib.auth.context_processors.auth",
)
AUTHENTICATION_BACKENDS = (
"allauth.account.auth_backends.AuthenticationBackend",
)
我还从 allauth 提供的管理模块添加了 facebook 密码和应用程序 ID.
also i have added facebook secret and app id from admin module the allauth provides.
期待快速回复.
解决方案
刚刚遇到并解决了同样的问题.您需要安装 django-allauth 所依赖的 Facebook SDK egg,即:
Just faced and solved the same problem. You need to install the Facebook SDK egg, which django-allauth relies on, i.e.:
pip install -e git://github.com/pythonforfacebook/facebook-sdk.git#egg=facebook-sdk
(顺便说一句,如果您使用的是 Django 1.4,由于 django-allauth 没有使用新的时区感知日期,在确认电子邮件地址时会遇到运行时错误.快速修复是设置
(By the way, if you are using Django 1.4, you will run into a runtime error when confirming email addresses due to django-allauth not using the new timezone-aware dates. The quick-fix is to set
USE_TZ = False
在您的 settings.py 中.)
in your settings.py.)
相关文章