Если вы можете вставить redirect_to
в контекст для своего шаблона входа, то есть механизм, который вы можете использовать для изменения URL-адреса перенаправления.
В своем шаблоне входа добавьте дополнительный скрытый ввод вформа
<input type="hidden" name="next" value="{% url redirect_to %}">
Теперь в вашем файле urls.py вы можете указать, какой ввод использовать для перенаправления:
url(r'^login/$',
auth_views.login,
{'template_name': 'registration/login.html',
'redirect_field_name': 'next'},
name='auth_login'),
Если вы сделаете это, вы будете перенаправленыв разные места в зависимости от значения redirect_to
.
Вы можете получить redirect_to
в своем контексте, указав более одного имени для входа в систему:
url(r'^login/$',
auth_views.login,
{'template_name': 'registration/login.html',
'redirect_field_name': 'next',
'extra_context': {'redirect_to': 'foo_url'}
},
name='foo_login'),
url(r'^login/$',
auth_views.login,
{'template_name': 'registration/login.html',
'redirect_field_name': 'next',
'extra_context': {'redirect_to': 'bar_url'}
},
name='bar_login'),
Или еслиВы не хотите делать такие вещи, вместо этого вы можете использовать что-то в сеансе:
<input type="hidden" name="next" value="{% url session.redirect_to %}">
Надеюсь, что это поможет, и приносим извинения, если в коде есть опечатки!Документация для вида авторизации входа немного сложна для ссылки ссылка .Перейдите по этой ссылке и немного прокрутите вверх!