无法使用Python Flask

时间:2018-03-11 15:01:58

标签: python python-3.x sqlalchemy flask-sqlalchemy

我正在使用python flask并拥有一个数据库A,我将从中抽出一年。我已将数据库中的列定义为整数,但我很难让我的查询返回整数。现在,我试图在我的查询中找到最大年份,所以我最终可以添加后续年份。

def add():
    years = db.session.query(A.year.distinct().label("year"))
    maxyear = max(db.session.query(A.year.distinct().label("year")))
    return render_template("x.html",maxyear=maxyear,years=years,type=type(maxyear))

此函数当前将其返回为(maxyear,type):

 (2017,) , <class 'sqlalchemy.util._collections.result'>

我试着这样做:

maxyear = int(max(db.session.query(A.year.distinct().label("year"))))

但收到此错误:

typeError: int() argument must be a string, a bytes-like object, or a number, not 'result'.

有关如何调整查询以纠正此问题的任何建议吗?

1 个答案:

答案 0 :(得分:0)

你得到一个集合作为回报 - 而不是单一的价值。使用[0]得到第一个? - Patrick Artner

year = maxyear [0]