2014-03-27 31 views
4

在我的应用程序中,我有一个“?下一步”的参数,所以当用户登录时,他们将被重定向到他们来自哪里。示例www.mysite.com/login/?next=www.mysite.com/some-section/Django allauth - 设置Facebook重定向

我正在使用django-allauth进行Facebook注册。当他们在用户登录被重定向到settings.py(settings.LOGIN_REDIRECT_URL)指定的URL

有没有办法在重定向URL传递例如像这样:

<a class="button-facebook" href="{% provider_login_url "facebook" method="oauth2" next=redirecturl redirect_uri=redirecturl %}"> 

回答

3

有一些allauth配置上的适配器。例如下面这个:

ACCOUNT_ADAPTER(=“allauth.account.adapter.DefaultAccountAdapter”) 指定要使用的适配器类,允许您更改某些默认行为。

覆盖那些默认,并设置自己的设置:

settings.py

ACCOUNT_ADAPTER = 'MyAdapter' 

somewhere.py

class MyAdapter(DefaultAccountAdapter): 

    def get_login_redirect_url(self, request): 
     return request.GET['next'] 

检查的默认行为: https://github.com/pennersr/django-allauth/blob/master/allauth/account/adapter.py