在我的Django应用程序中,我有一个用于登录的谷歌oauth2,所以当用户注册时,first_name、last_name和username会自动添加到User
模型中,并且可以通过管理面板查看。但是用户的电子邮件地址没有被添加,为什么会这样当用户使用OAuth注册时,有什么方法可以将电子邮件地址添加到User
模型中吗
默认情况下(如果未指定SCOPE(,会请求配置文件范围,也可以根据是否启用SOCIALACCOUNT_QUERY_EMAIL
选择电子邮件范围。请参阅django allauth。
可选地,您可以指定要使用的范围如下:
SOCIALACCOUNT_PROVIDERS = {
'google': {
'SCOPE': [
'profile',
'email',
],
'AUTH_PARAMS': {
'access_type': 'online',
}
}
}
有效范围包括:电子邮件、电话、地址、aq:name、aq:location。默认情况下,如果SOCIALACCOUNT_QUERY_EMAIL=True
,则请求用户名和电子邮件地址。您可以通过设置SOCIALACCOUNT_EMAIL_VERIFICATION=True
和SOCIALACCOUNT_EMAIL_REQUIRED=True
来请求并要求验证电子邮件地址。
更新
另请参阅SOCIALACCOUNT_EMAIL_VERIFICATION
的配置。