python - flask_sqlalchemy 循环查询结果一样
PHPz
PHPz 2017-04-18 09:15:53
0
2
673

使用flask_sqlalchemy 每隔5秒循环查询数据时,获取到的数据相同。

代码如下:

while True:
        task = TaskQueue.query.filter_by(status=0).order_by(TaskQueue.create_time.asc()).first()
        print(task)

        if task:
            pass
        else:
            time.sleep(5)
  • 数据表中记录的 status 全部为 0,运行以上代码 持续输出 None ,不中断进程,手动修改数据表中一条记录status=1 以上代码还是照常输出 None 相当于task还是未获取到值,求解?

PHPz
PHPz

学习是最好的投资!

모든 응답(2)
大家讲道理

해결 방법은 알겠으나 이유는 모르겠습니다. Task = None일 때 db.session.remove()만 추가해주세요~~

小葫芦

Flask_sqlalchemy를 사용한 적이 없습니다. 귀하의 생각에 따르면 SQL은 생성 시간의 오름차순으로 첫 번째 상태 = 0을 찾으십시오.
상태 = 0인 taskqueue에서 *를 선택하십시오. , 1

이론적으로 데이터 테이블의 상태가 모두 0이면 매번 데이터가 있어야 합니다.
ORM이 지정된 라이브러리에 연결되지 않았거나 첫 번째 기능이 시작되지 않은 것이 문제일 수 있습니다.

데이터를 먼저 찾을 수 있는지 확인하는 것이 좋습니다
tasks = TaskQueue.query.filter_by(status=0)
print len(tasks)

어떤 링크가 문제인지 확인

최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿