Я столкнулся с ошибкой выхода индекса списка за пределы диапазона, моя ситуация выглядит следующим образом;

def login_view(request): if request.user.is_authenticated: return redirect('/dashboard')

if request.method == 'POST':
    email = request.POST['email']
    password = request.POST['password']
    cache.set('email',email)
    fact = User.objects.filter(email=email).values('username')
    username = fact[0]['username']
    username = username.encode(encoding='UTF-8')
    password = password.encode(encoding='UTF-8')

Вы должны проверить, вернул ли ваш запрос фильтра какие-либо данные:

if request.method == 'POST':
    email = request.POST['email']
    password = request.POST['password']
    cache.set('email',email)
    fact = User.objects.filter(email=email).values('username')
    if len(fact) > 0:
        username = fact[0]['username']
        username = username.encode(encoding='UTF-8')
        password = password.encode(encoding='UTF-8')
    else:
        print("no user")
Вернуться на верх