Python Django: Как предотвратить очистку поля формы?
Я работаю с Python Django и у меня есть очень простая форма, состоящая из кнопки и поля ввода. Проблема в том, что поле ввода почему-то очищается после отправки формы. Как я могу предотвратить его очистку?
Это мой файл python:
def index(request):
# print(f"its me {os.getcwd()}")
txt = request.GET.get("some_txt")
if (request.GET.get('mybtn')):
print(f"THIS IS THE TEXT VALUE: {txt}")
else:
print("Has not been clicked")
return render(request, "main/index.html")
Это HTML-файл:
<form action="#" method="get">
{% csrf_token %}
<input type="text" name="some_txt">
<button type="submit" class="btn btn-primary" value="mybtn" name="mybtn">Submit</button>
</form>
Вы каждый раз создаете новую форму, поэтому если вы хотите заполнить форму старыми данными, вы передаете их шаблону:
def index(request):
txt = request.GET.get('some_txt', '')
if (request.GET.get('mybtn')):
print(f'THIS IS THE TEXT VALUE: {txt}')
else:
print('Has not been clicked')
return render(request, 'main/index.html', {'txt': txt})
и в форме вы используете это как значение:
<form action="#" method="get">
<input type="text" name="some_txt" value="{{ txt }}">
<button type="submit" class="btn btn-primary" value="mybtn" name="mybtn">Submit</button>
</form>