为了账号安全,请及时绑定邮箱和手机立即绑定

烧瓶后端返回无效数据

烧瓶后端返回无效数据

Go
眼眸繁星 2022-08-25 09:12:47
我正在构建一个 Flask 后端。我有此路由,应返回与电子邮件匹配的 ID@app.route('/login', methods=['POST'])def login():    email = request.json['data']    id = session.query(Users).filter_by(email=Users.estudent_email)    result = users_schema.dump(id)    return jsonify(result)我目前正在向它发送此数据{    "data": "name.lastname@email.com"}但它返回了一大堆不正确的数据。它应从数据库中返回分配给保存电子邮件的用户的单个 ID。可能的原因是什么?我正在使用Marshmallow和SQLAlchemy ORM。
查看完整描述

1 回答

?
人到中年有点甜

TA贡献1895条经验 获得超7个赞

问题可能出在以下行:

id = session.query(Users).filter_by(email=Users.estudent_email)

你似乎以错误的方式检查了平等。 引用数据库的整个字段,并且是 中的命名参数,而不是您在上一行中定义的参数。Users.estudent_emailemailfilter_byemail

我无法测试,但我认为你想要:

id = session.query(Users).filter(Users.estudent_email==email)

id = session.query(Users).filter_by(email=email)

至于序列化,和 ,我不知道,因为没有足够的上下文来确定如何使它工作。result = users_schema.dump(id)


查看完整回答
反对 回复 2022-08-25
  • 1 回答
  • 0 关注
  • 67 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信