Запрос формы Django всегда отвечает "GET" вместо "POST", даже когда я использую <form action="" method="post">.
Пожалуйста, помогите мне, я ищу решение уже несколько часов, но так ничего и не нашел.
Вот мой HTML:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@4.3.1/dist/css/bootstrap.min.css" integrity="sha384-ggOyR0iXCbMQv3Xipma34MD+dH/1fQ784/j6cY/iJTQUOhcWr7x9JvoRxT2MZw1T" crossorigin="anonymous">
<style>
input {
width: 10%;
margin: 0 auto;
display: block;
margin-left: auto;
margin-right: auto;
}
</style>
</head>
<body>
{% load crispy_forms_tags %}
<div class="container">
<form action="" method="post">
{% csrf_token %}
{% crispy form %}
<input type="submit" class="btn btn-primary mx-auto d-block">
</form>
</div>
</body>
</html>
и вот мой views.py:
from django.shortcuts import render
from .forms import UserInformationForm
# Create your views here.
def register(request):
form = UserInformationForm()
context = {"form": form}
print(form)
if request.method == "POST":
print("Post")
form = UserInformationForm(request.POST)
if form.is_valid():
form.save()
print(form)
return render(request, 'index.html', context)
Единственный ответ, который я получаю, это: "GET /register/ HTTP/1.1" 200 3542
Я уже пробовал такие вещи, как if request.method == "GET":
Но тогда у меня на каждом поле в форме была отметка "This fiel is required"
пожалуйста, ознакомьтесь с документацией django введите описание ссылки здесь
form = UserInformationForm()
context = {"form": form}
вам не нужно добавлять эти коды. Если это POST-запрос, нам нужно обработать данные формы