2010-01-14 2 views
3

Я хочу регистрационную форму только с адресом электронной почты + пароль. Я думаю, что вставлять автоматически электронную почту в поле имени пользователя. Так, Eash пользователь, у меня будет это:Регистрационная форма с только электронной почтой + пароль

Имя пользователя: [email protected]

пароль: мойпароль

электронная почта: [email protected]

, конечно, электронная почта + пароль будет использовать в процессе входа в систему.

Является ли это хорошим решением для того, чтобы иметь 2 поля с одинаковым значением? Или есть более сложное решение?

Спасибо :)

ответ

2

Вероятно, не очень хорошая идея, чтобы обойти the expected regex validation on username что r'^\w+$' (так что нет @ или ., очевидно). Кроме того, есть 30 character limit на username, поэтому многие адреса электронной почты не подходят.

Вы должны написать собственный аутентификационный сервер, который аутентифицируется на основе фактического поля электронной почты - многие люди делают это, поэтому вы можете найти образцы на djangosnippets.

Две вещи, о которых следует помнить - по умолчанию поле электронной почты не является уникальным. Кроме того, вы почти наверняка сломаете приложение администратора, так что вам нужно будет сделать кое-какой pokery, если вы хотите использовать contrib.admin.

+1

Чтобы решить, я могу вставить случайную строку в поле имени пользователя и «unique = True» в электронном письме регистрационной формы. Это хорошая идея? – xRobot

Смежные вопросы