Есть ли что-то не так с работой таблицы alter на auth_user
, чтобы сделать username
be varchar(75)
, чтобы она могла соответствовать электронной почте? Что это может сломать?
Если вы должны были изменить auth_user.username
как varchar(75)
, где вам нужно было бы изменить django? Это просто вопрос изменения 30 - 75 в исходном коде?
username = models.CharField(_('username'), max_length=30, unique=True, help_text=_("Required. 30 characters or fewer. Letters, numbers and @/./+/-/_ characters"))
Или есть ли другая проверка в этом поле, которая должна быть изменена или какие-либо другие последствия для этого?
См. обсуждение комментария с bartek ниже относительно причины для этого.
Изменить. Оглядываясь на это через много месяцев. Для тех, кто не знает посылки: в некоторых приложениях нет требования или желания использовать имя пользователя, они используют только электронную почту для регистрации и авторизации. К сожалению, в django auth.contrib требуется имя пользователя. Вы можете начать отправлять письма в поле имени пользователя, но поле составляет всего 30 char, а электронные письма могут быть длинными в реальном мире. Потенциально даже дольше, чем предлагаемый здесь 75 char, но 75 char вмещает самые разумные адреса электронной почты. Вопрос направлен на эту ситуацию, поскольку она встречается приложениями на основе электронной почты.