5

I am using python-social-auth package along with Django to manage oauth and openID logins.

Now the issue is that, I can specify one redirect url in django settings.py, but in some case I want the user to be redirected to the same page from which he initiated the authentication process.

E.g: if my redirect url is : /home/ and I am currently in a page /products/product1 from which I authenticate the user, then I want the user to be redirected to /products/product1/ rather than /home/

Please help me solve this problem or at least some materials that covers this in detail.

Thanks in advance

akhil_
  • 233
  • 1
  • 4
  • 10

2 Answers2

11

I'm pulling your answer out of the question and placing it here for future reference.

Adding a parameter ?next={{request.get_full_path}} to the auth url.

Andy
  • 49,085
  • 60
  • 166
  • 233
6

A bit better is to conditianally add next when it exsists

 <a href="{% url 'social:begin' "google-oauth2" %}
    {% if request.GET.next %}?next={{request.GET.next}}{% endif %}">
      <img src="{{ STATIC_URL }}images/login-google.png" alt="Google">
 </a>
David Dehghan
  • 22,159
  • 10
  • 107
  • 95