Я думаю, что это должно быть легко, но я не могу понять это. Я пытаюсь написать отказ. Я получаю запрос на получение. Через urls.py я отрисую свое представление об отказе. В этом представлении я сохраняю некоторые параметры для пользователя в базе данных, а затем я хочу перенаправить пользователя на внешний URL. Я пробовал:Как перенаправить внешний URL в Django?
return redirect('http://stackoverflow.com/')
от Django documentation. Тем не менее, представление optout отображает шаблон обучения вместо возврата перенаправления, хотя параметры сохраняются в базе данных, как и ожидалось. Мой код выглядит следующим образом:
def optout(request):
if (('REMOTE_USER' in request.META and request.META['REMOTE_USER'] != "") or
(request.session.get('userid', False) and request.session['userid'] != "")):
if ('REMOTE_USER' in request.META and request.META['REMOTE_USER'] != ""):
userid = request.META['REMOTE_USER']
if (request.session.get('userid', False) and request.session['userid'] != ""):
userid = request.session['userid']
user = User.objects.get(username=userid)
user.optout = True
user.postpone = False
user.save()
return redirect('http://stackoverflow.com/')
context = { 'userid': "" }
return render(request, 'games/Training.html', context)
Любая помощь очень ценится.
Что вы подразумеваете под _it не работает_? В окне «Осмотр» вместо шаблона «Обучение» вместо шаблона «Обращение» отображается шаблон обучения? –
@JohnGordon, да. Ты прав. В представлении «Осмотр» вместо шаблона «Образец» вместо «Возврат» перенаправляется шаблон обучения, хотя параметры сохраняются в базе данных, как и ожидалось. – 1man
Ответ на этот вопрос отвечает [здесь] (http://stackoverflow.com/questions/12326504/django-redirect-to-custom-url) – AramirezMiori