Найти - Пользователи
Полная версия: Авторизация по мылу
Начало » Django » Авторизация по мылу
1
anton41k
Для авторизации воспользовался советом, получилось вот что после валидации
    data = form.cleaned_data
           if '@' in data['username']:
                email1=data['username']
                try:
                    user_obj = User.objects.get(email=email1)
                except User.DoesNotExist:
                    form.errors['username'] = [u'Вы неправильно ввели e-mail']           
                else:
                    user = auth.authenticate(email=email1, password=data['password'])
                    if user is None:
                        form.errors['password'] = [u'Вы неправильно ввели пароль']
                    else:
                        login(request, user)                
                        return HttpResponseRedirect('/start/')
Когда ввожу е-маил все нормально открывает страницу /start/ ,но не логинит.
Подскажите почему!!!

В питоне
In [6]: from students.forms import LoginForm
In [7]: from django.contrib import auth
In [8]: form = LoginForm()
In [9]: user =auth.authenticate(email='anton41k@mail.ru', password='123456')
In [10]: user
Out[10]: <User: anton41k>
anton41k
нужно заменить login(request, user) на auth.login(request, user)
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB