分页获取
async with db.bind.Session() as session:
async with session.begin():
# 查询用户的笔记本列表
stmt = select(Notebook).where(Notebook.user_id == user_id).order_by(Notebook.id.desc())
# 使用分页
notebooks = await session.paginate(stmt, page_size=20, )
报错:2025-07-14 08:42:40.032 | ERROR | quart_jwt_extended.view_decorators:wrapper:116 - 用户: 获取用户1的笔记本列表发生错误:'Notebook' object has no attribute 'keys' | 消息: error
异常: 'Notebook' object has no attribute 'keys'
Traceback (most recent call last):
File "E:\tech\AI\Programs\qiaoji\back_end\apps\notebook\notebook.py", line 177, in get_notebook_list
notebooks = await session.paginate(stmt, page_size=20, )
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\programs\Anaconda\envs\qiaoji\Lib\site-packages\quart_sqlalchemy\session.py", line 266, in paginate
return paginator.parse_result(result)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\programs\Anaconda\envs\qiaoji\Lib\site-packages\sqlapagination\paginators\keyset\paginator.py", line 135, in parse_result
rows=unpack_rows_if_row_contains_only_orm_model(resulted_rows),
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\programs\Anaconda\envs\qiaoji\Lib\site-packages\sqlapagination\utils.py", line 23, in unpack_rows_if_row_contains_only_orm_model
if len(row.keys()) != 1:
^^^^^^^^
AttributeError: 'Notebook' object has no attribute 'keys'
分页获取
报错:2025-07-14 08:42:40.032 | ERROR | quart_jwt_extended.view_decorators:wrapper:116 - 用户: 获取用户1的笔记本列表发生错误:'Notebook' object has no attribute 'keys' | 消息: error
异常: 'Notebook' object has no attribute 'keys'
Traceback (most recent call last):
File "E:\tech\AI\Programs\qiaoji\back_end\apps\notebook\notebook.py", line 177, in get_notebook_list
notebooks = await session.paginate(stmt, page_size=20, )
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\programs\Anaconda\envs\qiaoji\Lib\site-packages\quart_sqlalchemy\session.py", line 266, in paginate
return paginator.parse_result(result)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\programs\Anaconda\envs\qiaoji\Lib\site-packages\sqlapagination\paginators\keyset\paginator.py", line 135, in parse_result
rows=unpack_rows_if_row_contains_only_orm_model(resulted_rows),
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\programs\Anaconda\envs\qiaoji\Lib\site-packages\sqlapagination\utils.py", line 23, in unpack_rows_if_row_contains_only_orm_model
if len(row.keys()) != 1:
^^^^^^^^
AttributeError: 'Notebook' object has no attribute 'keys'