INNER CODE UNIT · Python
paginate
dialoguemd/fastapi-sqla · fastapi_sqla/async_pagination.py:64
async def paginate(query: Select, scalars=True) -> Page:
total_items = await default_query_count(session, query)
return await paginate_query(
query, session, total_items, offset, limit, scalars=scalars
)
return paginate
def with_query_count_dependency(
session: SqlaAsyncSession = Depends(AsyncSessionDependency(key=session_key)),
offset: int = Query(0, ge=0),
limit: int = Query(min_page_size, ge=1, le=max_page_size),
total_items: int = Depends(query_count),
) -> AsyncPaginateSignature:
async def paginate(query: Select, scalars=True) -> Page:
return await paginate_query(
query, session, total_items, offset, limit, scalars=scalars
)