为什么我的Flask应用程序无法使用Python Social Auth创建新用户?

时间:2016-08-05 17:05:29

标签: flask python-social-auth

我正在使用python-social-auth包,它有相当奇怪的行为,也就是说,我可以使用现有的gmail帐户登录已经在数据库中注册,但我无法注册新用户。

实际上,这是一个dockerize Flask应用程序(在app.py中)。如果我没有使用supervisord,则所有Python Social Auth行为都可以正常工作。这意味着,我直接致电python app.py,而不是将其配置为supervisord中的supervisord.conf运行。

但如果我使用supervisord,新用户将无法注册。申请将被引导至登录页面。

注意:另一方面,我正在尝试使用Flask-OAuth重写社交实现。

1 个答案:

答案 0 :(得分:0)

最后,我发现了这个错误。这些是针对已确认的oauth流程的自定义管道的代码修复:

def pipeline_oauth_confirmed(backend, user, response, *args, **kwargs):
   user.active = True
   user.confirmed_at = datetime.now()
   db_session.commit()

由于应用在登录用户之前需要user.active=True,因此用户不会登录。我省略了db_session.commit()电话。一旦添加,它的工作原理!