{% if user.is_authenticated %} Всегда возвращать true
Я просто пытаюсь запустить простой {% if user.is_authenticated %}. Но он всегда возвращает true. Я хочу проверить, вошел ли пользователь в систему. Если да, то должна появиться кнопка Dashboard, а если нет, то кнопка Register.
Помогите мне!
Вот мои файлы:
vews.py :
from django.shortcuts import render, redirect
from django.contrib.auth.models import User, auth
from django.contrib import messages
# Create your views here.
def login(request):
return render(request, 'authorisation/login.html', {})
def register(request):
if request.method == 'POST':
email = request.POST['email'].replace('', '').lower()
password1 = request.POST['password1']
password2 = request.POST['password2']
if not password1 == password2:
messages.error(request, "Passwords doesn't match")
return redirect('register')
if User.objects.filter(email=email).exists():
messages.error(
request, "A user with the email address : {} already exists, please use a different email".format(email))
return redirect('register')
newUser = User.objects.create_user(
email=email, username=email, password=password2)
newUser.save()
auth.login(request, newUser)
return redirect('home')
return render(request, 'authorisation/register.html', {})
Моя HTML страница :
{% if user.is_authenticated %}
<li class="nav-item">
<a class="btn btn-primary ml-lg-2" href="#">Dashboard</a>
</li>
{% else %}
<li class="nav-item">
<a class="btn btn-primary ml-lg-2" href="{% url 'register' %}">Register</a>
</li>
{% endif %}
Всегда возвращается Приборная панель