Django повторно отправляет пустую форму после успешного заполнения
Я новичок в Django и пытаюсь сделать сайт, где после того, как пользователь вводит начальную и конечную дату, выполняется некоторая обработка данных, а затем выводится результат. У меня это работает, но после того, как форма успешно завершается и отображает данные, на сервере запускаются новые POST и GET запросы, которые не находят никаких данных. Это вызывает у меня проблемы с другой формой в том же проекте.
Я думаю, что мне может понадобиться использовать редирект, чтобы избежать двойного заполнения формы? Однако я пытаюсь обработать данные с помощью запроса post и отобразить их, и, насколько я понимаю, перенаправление приведет пользователя к новому url и не передаст обработанные данные вместе с ним.
Заранее спасибо!
Вот часть моего index.html
<div class="search-container">
<form action="{% url 'get_data' %}" method="post">
{% csrf_token %}
{{ timeform}}
<input type="Submit" name="submit" value="Submit"/>
</form>
А вот мой файл forms.py
from django import forms
class PickTimesForm(forms.Form):
start_date = forms.CharField()
end_date = forms.CharField()
и вот views.py
def plot_data(request):
context={}
trackform = PickTrackForm()
context["trackform"]=trackform
if request.method == 'POST':
timeform = PickTimesForm(request.POST)
if timeform.is_valid():
target_directory= '/home/bitnami/htdocs/projects/laserviz/data/'
start_date = timeform.cleaned_data.get("start_date")
end_date = timeform.cleaned_data.get("end_date")
[data,lats,lons] = tf.getTracks(start_date,end_date,target_directory)
[fig_html, track_info]= tf.makeMap(lons,lats)
context["figure"]=fig_html
context["track_info"]=track_info
context["timeform"]=timeform
context["start_date"]=start_date
context["end_date"]=end_date
context["data"]=data
return render(request,'index.html',context)
else:
timeform = PickTimesForm()
context['timeform']=timeform
return render(request,'index.html',context)