Форма Django не работает или CSRF_token отменен
Здравствуйте, я делаю Django App. У меня проблема с формой входа в систему. Всякий раз, когда я хочу войти в систему, форма ничего не делает или выдает ошибку csrf token. Просмотров:
def loginView(request):
if request.method == 'POST':
form = AuthenticationForm(request.POST)
if form.is_valid():
form.save()
username = form.cleaned_data.get('username')
messages.success(request, f"You successfully logged in {username}")
return redirect('home-page')
else:
form = AuthenticationForm()
return render(request, 'shop/login.html', {'form': form})
HTML TEMPLATE:
{% extends 'shop/base.html' %}
{% block content %}
<div class = "form-container">
<form class="form" method="POST">{% csrf_token %}
<label for="username">Email:</label>
{{form.username}}
<label for="password">Passoword:</label>
{{form.password}}
<button type="submit">Login</button>
</form>
</div>
{% endblock content %}
вы должны проверить, существует ли пользователь или нет в базе данных, если да, то войти в систему и перенаправить, если нет, то выбросить ошибку или перенаправить на другую страницу
def my_login(request):
if request.method == 'POST':
form = AuthenticationForm(request.POST)
if form.is_valid():
username = form.cleaned_data["username"]
password = form.cleaned_data["password"]
user = authenticate(username=username, password=password)
if user:
login(request, user)
return redirect('path')
else:
return redirect('path')
else:
return redirect('path')
else:
form = AuthenticationForm()
return render(request, "shop/login.html", {'form': form})
все еще получаем ошибку добавьте полный трассировщик & я также советую вам прочитать полную документацию по django https://docs.djangoproject.com/en/3.2/ref/contrib/auth/