一直在搞乱SQLalchemy和Flask,并遇到了一个我无法找到好文档的问题。
我需要查询特定用户的电子邮件,但我无法找到正确的过滤器组合并选择特定列。
我试过了:
user = User.query.filter(User.username == currentuser).email
user = User.query(User.email).filter(User.username == currentuser)
user = User.query.filter(User.username == currentuser, User.email)
user = User.query.filter(User.email, User.username == currentuser)
但我无法得到我想要的结果。
答案 0 :(得分:0)
非常确定
user = User.query.filter(User.username == currentuser).email
实际上并不执行查询,您必须执行类似
的操作 user = User.query.filter(User.username == currentuser).first().email
根据http://docs.sqlalchemy.org/en/latest/orm/query.html#sqlalchemy.orm.query.Query.first
注意,如果用户不存在,则上述语句将失败,因为first()将返回None。