Skip to main content
 首页 » 编程设计

带有 django/next= 变量的 python-social-auth

2024年10月24日30zfyouxi

我在 django 1.7 中使用 python-social-auth。我的 settings.py 中有以下代码

SOCIAL_AUTH_LOGIN_URL = '/accounts/login' 
SOCIAL_AUTH_NEW_USER_REDIRECT_URL = '/accounts/add_college' 
SOCIAL_AUTH_LOGIN_REDIRECT_URL = '/' 

但是,当我的网址是这样的时候

accounts/login/?next=/display/Electronics/Random/ 

我想被重定向到

display/Electronics/Random/ 

在我的模板中,我有以下代码

<a href="{% url 'social:begin' 'facebook' %}?next={{ request.path }}" class="btn btn-social btn-facebook"> 

但是,我仍然被重定向到 SOCIAL_AUTH_LOGIN_REDIRECT_URL 中指定的 url。如何考虑 next 变量的值?

请您参考如下方法:

确保您的 settings.py 中有 TEMPLATE_CONTEXT_PROCESSORS:

from django.conf import global_settings 
TEMPLATE_CONTEXT_PROCESSORS = global_settings.TEMPLATE_CONTEXT_PROCESSORS + ( 
    "django.core.context_processors.request", 
)