不明白为什么要加这一段,而且不知道在什么情况下要使用这段代码?@login_manager.user_loaderdefload_user(userid):returnUser.get(userid)
2 回答
拉风的咖菲猫
TA贡献1995条经验 获得超2个赞
login_user的时候会设置session["user_id"]用户发起一次http请求的时候ctx.user无值的时候通过某个callback当前登录用户,这个callback参数的user_id就是session['user_id']login_manager.user_loader就是注册这个callback文档写得清清楚楚啊......
互换的青春
TA贡献1797条经验 获得超6个赞
参考源码:对于函数login_user(),当你调用他的时候会设置session['user_id']=user_id;对于装饰器@login_manager.user_loader,在user_loader(self,callback)中设置的是self.user_callback=callback,即注册了load_user()这个自定义的callback;对于这个load_user()的使用,即self.callback的使用,参见方法reload_user(self,user=None),他的作用就是即使你的user参数无值,也可以通过调用self.callback来得到这个user,并把这个user赋值给ctx.user。
添加回答
举报
0/150
提交
取消