0

我目前正在使用 flask-jwt 库https://github.com/mattupstate/flask-jwt和 flask-sqlalchemy。当我在标头中传递我的身份验证令牌时,我收到一条错误消息User object is not callable。我已按照此处给出的示例https://pythonhosted.org/Flask-JWT/切换模型以换取 sqlalchemy 模型。示例代码返回 User 对象,但是当我切换到 sqlalchemy 时它会抱怨。

这是我的模型:

db = SQLAlchemy(app)

#we should prepare the data that we need from here
class User(db.Model):
    id = db.Column(db.Integer, primary_key=True)
    Username = db.Column(db.String(80))
    Password = db.Column(db.String(64))
    Hosts = db.relationship('Host', backref='user', lazy='dynamic')

    def __init__(self, username, password):
        self.Username = username
        self.Password = password

    def __str__(self):
        return "User(id='%s')" % self.id

它在这里失败了:

def identity(payload):
    print str(payload)
    print str(User.query.get(payload['identity']))
    return User.query.get(payload['identity'])

我可以看到正在打印的有效负载和用户,这是输出:

{u'iat': 1464650823, u'exp': 1464651123, u'nbf': 1464650823, u'identity': 1}
User(id='1')
4

0 回答 0