Python 属性错误:';选择查询';对象没有属性';处于活动状态';

Python 属性错误:';选择查询';对象没有属性';处于活动状态';,python,flask,attributeerror,peewee,flask-peewee,Python,Flask,Attributeerror,Peewee,Flask Peewee,我正试图通过以下步骤学习Peewee ORM与Flask的结合。在中,我使用OpenID创建了一个登录名。在克服了一系列障碍之后,我现在在下面的一行粘贴了一个AttributeError函数:login\u user(user,memory=memory\u me) 处于活动状态可在我的用户模型中找到,如下所示: class User(db.Model): nickname = TextField() email = TextField() role = IntegerF

我正试图通过以下步骤学习Peewee ORM与Flask的结合。在中,我使用OpenID创建了一个登录名。在克服了一系列障碍之后,我现在在下面的一行粘贴了一个AttributeError函数:
login\u user(user,memory=memory\u me)

处于活动状态
可在我的用户模型中找到,如下所示:

class User(db.Model):
    nickname = TextField()
    email = TextField()
    role = IntegerField(default = ROLE_USER)

    def is_authenticated(self):
        return True

    def is_active(self):
        return True

    def is_anonymous(self):
        return False

    def get_id(self):
        return self.id

    def __repr__(self):
        return '<User %r>' % (self.nickname)
类用户(db.Model):
昵称=TextField()
email=TextField()
角色=整数字段(默认值=角色\用户)
def已通过身份验证(自身):
返回真值
def处于活动状态(自):
返回真值
def是匿名的(自我):
返回错误
def get_id(自身):
返回self.id
定义报告(自我):
返回“”%(自我昵称)
我不知道我在这里做错了什么。谁能帮我一把我做错了什么


欢迎所有提示

如错误所示,
user=user.select()。其中(user.email==resp.email)
返回一个
SelectQuery
,而不是
user
的实例。您需要包含一个额外的方法调用来实际获取记录,类似于
.first()
first
将返回
User
None
的实例

这将允许您稍微调整代码:

user = User.select().where(User.email == resp.email).first()
if not user:  # or if user is None:
    nickname = resp.nickname
    ...

令人惊叹的!万分感谢!我是peewee新手,但我认为目前相当于
first()
的是
get()
user = User.select().where(User.email == resp.email).first()
if not user:  # or if user is None:
    nickname = resp.nickname
    ...