python社交身份验证中的用户名

python社交身份验证中的用户名,python,openid,django-socialauth,Python,Openid,Django Socialauth,我想使用我的Web服务,但我不能100%确定它是如何工作的: 当我注册我的github帐户(假设我的github帐户名为joe)时,python social auth会创建一个名为joe的新用户和user.username也是joe。 但是,如果另一个用户想要注册,即使用google帐户,但该用户拥有google用户名joe,该怎么办 那么我的Web服务上会发生什么?python social auth会抱怨说已经有一个名为joe的用户,还是能够区分github用户和google用户 而use

我想使用我的Web服务,但我不能100%确定它是如何工作的:

当我注册我的github帐户(假设我的github帐户名为joe)时,python social auth会创建一个名为joe的新用户和
user.username
也是joe。 但是,如果另一个用户想要注册,即使用google帐户,但该用户拥有google用户名joe,该怎么办

那么我的Web服务上会发生什么?python social auth会抱怨说已经有一个名为joe的用户,还是能够区分github用户和google用户


user.username
会是这两个版本的joe吗

python social auth
将为每个用户创建一个唯一的用户名,以防发生冲突,默认的解决方法是在用户名的末尾附加一个哈希,因此它将成为
joed41d8cd98f00…
,此处介绍了处理该问题的方法


您可以通过替换管道中的该方法(或在对生成的用户名应用某些转换的方法之后添加另一个方法)来覆盖默认行为。

python social auth
将在发生冲突时为每个用户创建唯一的用户名,默认的解析方法是在用户名的末尾附加一个散列,因此它将成为
joed41d8cd98f00…
,处理该问题的方法在这里

您可以通过替换管道中的该方法(或在该方法之后添加另一个方法,对生成的用户名应用一些转换)来覆盖默认行为