我怀疑错误的原因,但我不知道如何解决它,这是发生了什么事:Python社交认证。用户登录创建新的用户,而不是使用现有
我的本地数据库,然后在做了pg_dump
在Heroku的生产数据库上的pg_restore
。现在,当某个已有用户名的用户尝试登录(使用Facebook或Google等)时,PSA会创建一个新用户,并在末尾添加一个随机数,而不是登录现有用户。
例如,用户与用户名JohnSmith对日志与FB,因为JohnSmith对在数据库中已经存在,它会创建用户名新用户JohnSmit654f6b654
我想我来恢复数据库备份不知何故没”的pg_restore
包括一些重要的psa表。我想知道我应该手动恢复哪些Python Social Auth表,以便它能正常工作。或者......也许这是错误的原因。谢谢你的帮助。
顺便说一句,我在Heroku上使用Django 1.8。
编辑
我的社会身份验证管道:
SOCIAL_AUTH_PIPELINE = (
'social.pipeline.social_auth.social_details',
'social.pipeline.social_auth.social_uid',
'social.pipeline.social_auth.auth_allowed',
'social.pipeline.social_auth.social_user',
'social.pipeline.user.get_username',
'social.pipeline.user.create_user',
'social.pipeline.social_auth.associate_user',
'social.pipeline.social_auth.load_extra_data',
'social.pipeline.user.user_details',
'letrasclub.utils.create_profile'
)
其正常管道+ create_profile
,去年仅管道为用户创建一个配置文件,如果它没有一个。它可能不是问题的根源,因为管道正在创建新用户,发生在'social.pipeline.user.create_user'
。
你的'SOCIAL_AUTH_PIPELINE'设置包含什么? – Brandon
@Brandon,Thnx寻求答案。添加管道到问题。 – alejoss