flask-login属性访问报错
使用flask-login进行用户登录时,遇到了无法获取登录用户的属性问题,报错为:“str’ Object has no Attribute ‘id’”(字符串对象没有id属性)。
问题原因:
初始化user类时,将数据库模型中的user对象直接传入,而不是获取相应属性值。
解决方法:
在user类中正确获取数据库模型的属性值。修改后的代码如下:
class User(UserMixin): def __init__(self, user_id): self.id = user_id.id self.name = user_id.name
此外,使用current_user.name获取用户名称时,也应确保数据库中存在“name”字段。