2014-12-29 2 views
3

После того как я выберет некоторое представление с помощью decorator login_required(), пользователь перенаправляется на: http://example.com/login/? следующий =/anuncio/adicionar/, правый?Python Социальный аут перенаправление на тот же URL-адрес

Но, после того, как я использую «Войти через Facebook», пользователь перенаправляется на http://example.com/login/#= вместо http://example.com/anuncio/adicionar/

Это происходит только тогда, когда я использую питон-социального-авторизацию, и не произойдет, если я использую аутентификации родные авторизоваться.

Моя регистрация/login.html - Python Social Auth ссылка

<a class="btn btn-social btn-fw btn-lg btn-facebook" href="{% url 'social:begin' 'facebook' %}?next={{ request.path }}"><i class="fa fa-facebook"></i> Fazer login com Facebook</a> 

и мой родной Auth Войти

<form action="{% url "auth:login" %}" role="form" method="POST">{% csrf_token %} 

ответ

1

Добавить Войти Перенаправление URL для вашего settins.py файла

LOGIN_REDIRECT_URL = '/anuncio/adicionar/' 

поэтому, когда проверка подлинности пользователя будет tedirect данной ссылке

+1

Это не может быть нединамический URL. Мне нужно перенаправить пользователя на динамический URL. Иногда будет «/ anuncio/adicionar», иногда «/ empresa/adicionar /» –

+0

да, вы можете это сделать. создайте одно представление для этого URL-адреса и в этом представлении используйте httpresponseredirect. поэтому вы можете перенаправить куда угодно. Вы можете поместить динамический url в httpresponseredirect. – Gaurav

-2

Попробуйте добавить их в ваш config.py (если импортируется в settings.py, если нет - добавьте в settings.py)

SOCIAL_AUTH_LOGIN_REDIRECT_URL = '/anuncio/adicionar/' 
SOCIAL_AUTH_LOGIN_URL = '/login' 

Данные определенные ons определяют URL перенаправления после аутентификации с помощью facebook.

+1

я получил его. Но если мне нужно отправить динамический url? Иногда будет «/ anuncio/adicionar», иногда «/ empresa/adicionar /», ... –

+0

Вы можете передать URL для другого перенаправления/замены на стороне сервера, используя сеанс. Говорят, что Facebook передает идентификатор сеанса. –

+2

Возможно, мой вопрос в том, почему Python Social Auth не следует параметру «next =». –

Смежные вопросы