2014-04-23 4 views
2

Я хочу использовать python-social-auth для моего веб-сервиса, но я не уверен на 100%, как это работает:Имя пользователя в питон-социальной-AUTH

Когда я подписываю с моим GitHub счет (скажем, мой GitHub счет называется joe), то python-social-auth создает нового пользователя с именем joe и user.username также joe. Но что произойдет, если другой пользователь хочет зарегистрироваться, то есть с помощью учетной записи google, но у этого пользователя есть имя пользователя jojo.

Что происходит на моем веб-сервисе? будет ли жалоба python-social-auth и сказать, что уже есть пользователь с именем joe или он сможет отличить пользователя github и пользователя google?

и будет user.username быть Джо для обоих!

ответ

4

python-social-auth создаст уникальное имя пользователя для каждого пользователя в случае столкновения, метод разрешения по умолчанию - добавить хэш в конец имени пользователя, так что это станет joed41d8cd98f00..., метод, который позаботится об этом здесь https://github.com/omab/python-social-auth/blob/master/social/pipeline/user.py#L9-L53.

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

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

  • Нет связанных вопросов^_^