我正在構建一個 Flask 后端。我有此路由,應返回與電子郵件匹配的 [email protected]('/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": "[email protected]"}但它返回了一大堆不正確的數據。它應從數據庫中返回分配給保存電子郵件的用戶的單個 ID??赡艿脑蚴鞘裁矗课艺谑褂肕arshmallow和SQLAlchemy ORM。
1 回答

人到中年有點甜
TA貢獻1895條經驗 獲得超7個贊
問題可能出在以下行:
id = session.query(Users).filter_by(email=Users.estudent_email)
你似乎以錯誤的方式檢查了平等。 引用數據庫的整個字段,并且是 中的命名參數,而不是您在上一行中定義的參數。Users.estudent_email
email
filter_by
email
我無法測試,但我認為你想要:
id = session.query(Users).filter(Users.estudent_email==email)
或
id = session.query(Users).filter_by(email=email)
至于序列化,和 ,我不知道,因為沒有足夠的上下文來確定如何使它工作。result = users_schema.dump(id)
- 1 回答
- 0 關注
- 82 瀏覽
添加回答
舉報
0/150
提交
取消