Уведомления

Группа в Telegram: @pythonsu

#1 Фев. 24, 2014 18:39:40

anton41k
Зарегистрирован: 2013-12-18
Сообщения: 36
Репутация: +  0  -
Профиль   Отправить e-mail  

Авторизация по мылу

Для авторизации воспользовался советом, получилось вот что после валидации

    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 (Фев. 24, 2014 19:26:22)

Офлайн

#2 Март 1, 2014 21:37:18

anton41k
Зарегистрирован: 2013-12-18
Сообщения: 36
Репутация: +  0  -
Профиль   Отправить e-mail  

Авторизация по мылу

нужно заменить login(request, user) на auth.login(request, user)

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version