-
Notifications
You must be signed in to change notification settings - Fork 19
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Уникальная почта пользователя #19
Comments
Доброго, Спасибо за тёплые отзывы, но я Вас, пожалуй, разочарую: эта задумка не очень ложится в идеологию работы django-ulogin. Всё-таки email - это точно такое же поле, как и first_name, например, поэтому оно оказаться быть неуникальным в рамках одной соц. сети (например, у разных жж-юзеров допускается один email). К тому же, в каком-нибудь проекте e-mail вообще может не быть нужным, поэтому хардкодить дополнительные проверки, обрекая тем самым юзера на ввод ненужного в общем-то имейла - тоже идея так себе. А вот idenity гарантирует уникальность. Думаю, в Вашем случае лучше либо форкнуть django-ulogin, либо написать собственное приложение django_ulogin_email, которое подключалось бы к проекту и расширяло оригинальный django-ulogin. Навскидку, это новое приложение должно работать как-то так:
В общем, частный случай вполне решаем, как мне кажется :-) |
Да, случай частный. Только сейчас подумал о том, что в случае Твиттера и Вконтакта пользователь указывает произвольную почту, никак не подтверждённую соц. сетью. Сказать пользователю о том, что такая почта уже есть в случае Твиттера и ВК нет, т. к. её спрашивают на стороне uLogin. Как бы вы решили задачу с уникальной почтой? |
Кстати, может быть, сделать опцию ULOGIN_UNIQUE_EMAIL (default=False): if ULOGIN_UNIQUE_EMAIL:
user, created = User.objects.get_or_create(email=email)
else:
user = User(email=..., is_active=True, ...) |
Запретил бы пользоваться email в качестве логина :-) По-другому, кажется, никак в свете вышеозначенного. В общем-то, ulogin для того и придумывали, чтобы уйти от стандартной схемы "логин-пароль". Да и вообще, поле email в
Лучше не надо. Нехорошо общие решения подстраивать под частные. |
В том-то и дело, что не можем отказаться от авторизации по почте. Отличный сервис! Отличное приложение! |
Здравствуйте! |
Доброго дня, Я по-прежнему уверен, что использовать e-mail как идентификатор вредно. Поэтому никаких подвижек в этом направлении нет и не планируется. С другой стороны, это приложение разрабатывалась во времена Django 1.3х и, соответственно, под стандартного Вот в этом направлении двигаться стоит, правда, я пока не очень представляю как. Возможно, решение косвенным образом позволит решить и Ваши проблемы. Но лучше бы Вам всё же отказаться от мысли использовать e-mail как идентификато - коллизии возможны. |
Согласен, вредно и не безопасно. Так приложение будет более гибким. |
Приложение тем гибче, чем проще. Читайте - чем в нём меньше ветвлений и условностей =) Лучше предоставить программисту возможность самому работать с сохраняемым объектом (а это сделать всё равно придётся в реалиях Django 1.5). Как он напишет, так и будет. |
Доброго времени суток!
Сделайте, пожалуйста, уникальную почту пользователя: если такая почта уже есть, то при регистрации пользователь с такой же почтой не регистрируется, а авторизуется как существующий.
PS: это самое адекватное джанго-приложение для авторизации через соц. сети
The text was updated successfully, but these errors were encountered: