Django: использовать ту же дату запроса при обновлении страницы - PullRequest
0 голосов
/ 03 июня 2018

Я создаю приложение для Django.На мой взгляд, у меня есть функция, которая обрабатывает запрос формы POST и отображает зависимую от нее страницу: Это выглядит просто так:

def renderPage(request):

    if request.method == 'POST':
        form = ExampleForm(request.POST)
        if form.is_valid():
            # Do something with the form data

            #here i render the page and pass some data to it
            return render(request, "main/mypage.html", {"example" : example, ...})
    ...

Это работает так, как должно.Но теперь я хочу, чтобы, если кто-то находился на отрендеренной странице и перезагружал страницу (например, в chrome, нажав на адресную строку нажатием клавиши ввода), запрос на предварительный просмотр, который он сделал, был сохранен.В тот момент, когда кто-то перезагружает страницу, вызывается функция renderPage (), но запроса нет (очевидно, тогда, конечно, запрос request.method == 'POST' равен False).Есть ли простой способ добиться этого?Это проблема / особенность браузера?Это что-то, что я должен сделать в своем HTML-коде?

Я могу только очень сложные способы сделать это.Как, например, явное сохранение данных запроса, а затем написание сценария на JavaScript, который создает копию предыдущего запроса, когда кто-то перезагружает страницу.Я уверен, что в django есть более простой способ добиться этого!?

1 Ответ

0 голосов
/ 03 июня 2018

Вы можете попробовать:

<meta HTTP-EQUIV="pragma" CONTENT="no-cache">       
<meta HTTP-EQUIV="Cache-Control" CONTENT="no-store, must-revalidate">       
<meta HTTP-EQUIV="expires" CONTENT="0">

или перезагрузить данные, используя js

...