Хотя мой оригинал заключался в том, чтобы при создании учетных записей просто указывать адрес электронной почты в полях имени пользователя и адреса электронной почты, это не работает, поскольку Django ограничивает поле имени пользователя 30 символами, которых может быть недостаточно для адресов электронной почты.
Моя вторая мысль заключалась в том, чтобы md5 адрес электронной почты, поместить хэш в имя пользователя, и это сделало бы его всегда уникальным (и технически идентичным полю электронной почты). md5 - это 32 символа, опять же, у меня есть только 30 символов для работы.
Моя третья мысль заключалась в том, чтобы вырезать последние два символа из конца хеша md5, сделать его равным 30, а затем использовать его, как я планировал, использовать его с полным хешем. Но я не знаю, каковы шансы получить два хэша, которые идентичны до 30-го символа и различаются только в 31 и 32, которые я отрубил.
Есть ли лучший способ связать содержимое поля имени пользователя с адресом электронной почты таким образом, чтобы он всегда был уникальным?