Opened 23 months ago
Last modified 23 months ago
#34323 closed Bug
Django form request is always response with "GET" instead of "POST" even when I use <form action="" method="post"> — at Version 1
Reported by: | ODOshmocke | Owned by: | nobody |
---|---|---|---|
Component: | Forms | Version: | 4.1 |
Severity: | Normal | Keywords: | Forms, request, GET, POST |
Cc: | Triage Stage: | Unreviewed | |
Has patch: | no | Needs documentation: | no |
Needs tests: | no | Patch needs improvement: | no |
Easy pickings: | no | UI/UX: | no |
Description (last modified by )
I'm trying to use Django forms but every time I try to do a "POST" Method I get a "GET" as the return.
My 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>
My views.py:
def register(request):
if request.method == "POST":
print("Post")
form = UserInformationForm(request.POST)
if form.is_valid():
form.save()
print(form)
print("Form is valid")
else:
form = UserInformationForm()
print("Else")
return render(request, 'index.html', {"form": form})
I hope someone can help.