Я пытался добавить аутентификацию на своей странице регистрации. Но, похоже, что метод post вообще не работает. Я только начинающий в django, и я просто застрял в нем. быть оцененным Вот мой код
sign_up. html
<body>
{% if error %}
{{ error }}
{% endif %}
<div class="container">
<form action="{% url 'index' %}" method="POST">
{% csrf_token %}
<label for="name">Username: </label>
<input type="text" name="username" placeholder="Enter your name" required>
<br><br>
<label for="email1">Email:</label>
<input type="email" name="email1" placeholder="Your Email" required>
<br><br>
<label for="pass">Password: </label>
<input type="password" name="pass" placeholder=" Password" required>
<br><br>
<label for="confirm">Confirm Password: </label>
<input type="password" name="confirm" placeholder="Confirm Password" required>
<br><br>
<input type="submit" value="Sign Up">
</form>
</div>
</body>
views.py
from django.shortcuts import render,redirect
from django.contrib.auth.models import User
from django.contrib import auth
def index(request):
return render(request, "index.html")
def signup(request):
if request.method == "POST":
if request.POST['pass'] == request.POST['confirm']:
try:
user=User.objects.get(username= request.POST['username'])
return render(request, 'sign_up.html', {'error':'Username already been taken'})
except User.DoesNotExist:
user=User.objects.create_user(request.POST['username'],
password=request.POST['confirm'])
auth.login(request, user)
return redirect('home')
else:
return render(request,'sign_up.html')
urls.py
from django.urls import path
from . import views
urlpatterns = [
path('signup/', views.signup, name='signup'),
path('login/', views.login, name='login'),
path('logout/', views.logout, name='logout'),
path('leghacy', views.legacy, name='legacy'),
]