Django-allauth社交登录取消的自定义重定向

4
我正在使用django-allauth来实现社交登录功能。当用户被提示进行社交登录时,如Facebook登录窗口等,他可以选择拒绝权限请求。

在这种情况下,用户当前会被重定向到/accounts/social/login/cancelled/。是否有一种方法可以将其重定向到自定义的URL?

1个回答

7
我发现我可以使用自定义视图来覆盖allauth的社交登录取消视图。我按照这篇博客文章中描述的说明操作 - 如何从外部Django应用程序重写视图
我所需要做的就是定义一个包含我的自定义逻辑的视图,并在urls.py中的所有allauth url定义之前放置此视图的url定义。
views.py:
def login_cancelled(request):
    ...
    custom_logic
    ...

urls.py

from myapp.views import login_cancelled

urlpattenrs = patterns(
    ...
    url(r'^accounts/social/login/cancelled/$', login_cancelled),
    url(r'^accounts/', include('allauth.urls')),
    ...
)

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接