Я использую Django и имею следующий вид:
def index(request):
if request.method = 'POST':
form = TestForm(request.POST)
if form.is_valid():
# Process form
return HttpResponse('''see below''')
# The rest of the view...
Проблема:
Я пытаюсь перезагрузить страницу, оставаясь в той же позиции прокрутки,Я попытался поместить пару вещей в область '''see below'''
HttpResponse
:
Попытка 1:
return HttpResponse('<script>window.location.href = window.location.href</script>')
Это обновит всю страницу, и позиция прокрутки будетпотерян.
Попытка 2:
return HttpResponse('<script>document.location.reload(true)</script>')
Теоретически это должно работать (и работает, если я просто ввожу его в консоль браузера), но так как оно находится в форме Django с запросом POST,запрос POST повторяется, что приводит к бесконечному циклу запросов POST.
Примечание. По крайней мере, я так думаю.Вот вывод командной строки (показаны только первые несколько строк):
[12/Sep/2018 20:05:53] "GET /tasks/ HTTP/1.1" 200 10654
[12/Sep/2018 20:05:54] "POST /tasks/ HTTP/1.1" 200 47
[12/Sep/2018 20:05:54] "POST /tasks/ HTTP/1.1" 200 47
[12/Sep/2018 20:05:54] "POST /tasks/ HTTP/1.1" 200 47
Вопрос
Есть ли способ ОБА перезагрузить страницу в правильном положении прокрутки И использовать запрос GETа не запрос POST?