我正在使用 Flask-Login、MongoEngine、OAuth 和 Rauth for Flask。
我需要在 MongoEngine 中保存我的用户会话,但我不知道该怎么做。
我的代码是:
@app.route('/callback/<provider>')
def oauth_callback(provider):
if not current_user.is_anonymous:
return redirect(url_for('index'))
oauth = OAuthSignIn.get_provider(provider)
social_id, username, email = oauth.callback()
if social_id is None:
flash('Authentication failed.')
return redirect(url_for('index'))
user = User.objects(social_id=social_id).first()
if not user:
user = User(social_id=social_id, nickname=username, email=email)
user.save()
db.session.add(user)
db.session.commit()
login_user(user, True)
return redirect(url_for('index'))
在代码中,这行db.session.add(user)和db.session.commit()用于 SQL 但我不知道如何在 MongoEngine 中执行此操作。
有没有什么方法可以在 MongoEngine 中以简单的方式做到这一点?
谢谢!!