【发布时间】:2014-07-23 02:31:31
【问题描述】:
我收到以下错误。
未找到带有参数“()”和关键字参数“{}”的“facebook_channel”的反向操作。尝试了 0 个模式:[]
下面一行是红色的。
{% providers_media_js %}
这些是我在 local_settings.py 中的设置
SOCIALACCOUNT_PROVIDERS = \
{'facebook':
{'SCOPE': ['email', 'publish_stream'],
'AUTH_PARAMS': {'auth_type': 'reauthenticate'},
'METHOD': 'js_sdk',
'LOCALE_FUNC': lambda request: 'en_GB',
'VERIFIED_EMAIL': False}}
SOCIALACCOUNT_QUERY_EMAIL = True
settings.py
SITE_ID = 1
AUTHENTICATION_BACKENDS = (
'django.contrib.auth.backends.ModelBackend',
# `allauth` specific authentication methods, such as login by e-mail
'allauth.account.auth_backends.AuthenticationBackend',
)
TEMPLATE_CONTEXT_PROCESSORS = (
'django.contrib.auth.context_processors.auth',
'django.core.context_processors.request',
# allauth specific context processors
'allauth.account.context_processors.account',
'allauth.socialaccount.context_processors.socialaccount',
)
THIRD_PARTY_APPS = (
'allauth',
'allauth.account',
'allauth.socialaccount',
'allauth.socialaccount.providers.facebook',
'suit',
'debug_toolbar',
'south',
'crispy_forms',
'haystack',
'taggit',
'bootstrapform',
'sorl.thumbnail',
)
是的,我已经完成了模型迁移,我有 allauth 创建的四个表。
任何帮助将不胜感激,这已经困扰了我一段时间。
更新
主 urls.py
from django.conf.urls.static import static
from django.contrib.staticfiles.urls import staticfiles_urlpatterns
from django.conf.urls import patterns, include, url
from django.contrib import admin
from django.conf import settings
admin.autodiscover()
urlpatterns = patterns('',
url(r'^admin/', include(admin.site.urls)),
url(r'^accounts/', include('useraccount.urls')),
url(r'^directory/', include('directory.urls')),
) + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
urlpatterns += staticfiles_urlpatterns()
urlpatterns += url(r'', 'directory.views.home', name='home'),
if settings.DEBUG:
import debug_toolbar
urlpatterns += patterns('',
url(r'^__debug__/', include(debug_toolbar.urls)),
)
更新
用户帐户应用程序中的 urls.py
from django.conf.urls import patterns, url, include
from django.contrib.auth.decorators import login_required, permission_required
from useraccount.views import AccountView, ProfileUpdateView, ProfileDetailView
urlpatterns = patterns('',
(r'^logout', 'django.contrib.auth.views.logout', {'next_page': 'directory_home'}),
url(r'^profile/(?P<pk>\w+)', ProfileDetailView.as_view(), name='useraccount_profile'),
url(r'^edit', login_required(ProfileUpdateView.as_view()), name='useraccount_edit'),
url(r'^dashboard', login_required(AccountView.as_view()), name='useraccount_dashboard'),
url(r'', include('allauth.account.urls')),
)
【问题讨论】:
-
您是否在该模板中调用
{% load socialaccount %}? -
不,我只是复制了默认的 login.html 模板。我会尝试加载。
-
我猜这有效吗?
-
很抱歉没有机会这样做...C# 日常工作。我回家后会做,但我很有希望。谢谢会更新你。
-
如果你用 url(r'^accounts/', include('allauth.urls')) 替换 url(r'^accounts/', include('useraccount.urls'))修好吗?
标签: django django-allauth