Flask SQL Alchemy未在rou内更新数据库查询

2024-09-29 06:26:13 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个从数据库中读取的路由,然后将传递到该路由的值与数据库中的最新值进行比较

@application.route("/complete", methods=['POST'])
def complete():
    currentRound = request.json.get('round')
    block = db.session.query(Block).order_by(Block.id.desc()).first()
    if block.roundId == currentRound:
        return jsonify( { "round": "valid" } )
    else:
        return jsonify( { "round": "false" } )

但是当向块表中添加新行时,块值不会更改。例如,当我第一次运行应用程序时,如果添加到表中的最后一个块的roundId是“123”,则块.roundId在上述路线将是“123”。但如果应用程序仍在运行,并且数据库已更新,因此最新的行的id为“456”,则路由仍将显示块.roundId是“123”。在

在向数据库添加新行并返回正确值后,我再次检查并使用了相同的查询,因此我认为问题出在路由内部。非常感谢任何帮助。在


Tags: id数据库应用程序路由returnapplicationblockroute
1条回答
网友
1楼 · 发布于 2024-09-29 06:26:13

我找到了答案!虽然我在保存数据的另一个文件中调用了db.session.commit(),但是在读取路由内部的数据之前,我不得不再次调用它。谢谢PJ Santro!在

相关问题 更多 >