Подтвердить что ты не робот

Django auth: увеличение максимальной длины имени пользователя

Мне нужно увеличить максимальный размер имени пользователя в auth, чтобы превысить 30 символов, определенных в модели. Как это можно сделать? Я не уверен, что просто настройка модели является правильным или безопасным способом.

4b9b3361

Ответ 1

Этот ответ здесь интересный подход: Может ли django auth_user.username быть varchar (75)? Как это можно сделать?

Небольшое приложение, которое переопределяет атрибут max_length в модели User, но обратите внимание, что ваш столбец DB необходимо изменить, если таблицы не являются syncdb ed

Я лично использую обрезанный хеш как свое имя пользователя, которое уведомляло бы меня, было ли когда-либо супер маловероятное столкновение, с темой "Вы только выиграли в лотерею!"

Ответ 3

AFAIK, вам нужно подклассом auth.user, если вы этого хотите. Более простым и менее авантюрным решением может быть реализация модели пользовательского профиля с более длинным полем username. Чтобы избежать избыточности, вы можете, например, заполнить фактическое поле username произвольно сгенерированными числами и выйти из него.