Query Filters¶
This module provides standardized logic for pagination, sorting, and keyword search, bridging frontend request parameters with Advanced Alchemy statement filters.
Common Request Filters¶
- class CommonFilters[source]¶
Bases:
CamelizedBaseSchemaBase requirements for pagination, ordering, and keyword search.
- Fields:
- field search_string: Annotated[str | None, Field(description='Search term.')] = None (alias 'searchString')¶
Search term.
- field current_page: Annotated[int, Field(ge=1, description='Page number for pagination.')] = 1 (alias 'currentPage')¶
Page number for pagination.
- Constraints:
ge = 1
- field page_size: Annotated[int, Field(ge=1, description='Number of items per page.')] = 20 (alias 'pageSize')¶
Number of items per page.
- Constraints:
ge = 1
- field order_by: Annotated[str, Field(description='Field to order by.')] = 'name' (alias 'orderBy')¶
Field to order by.
- field sort_order: Annotated[Literal['asc', 'desc'], Field(description="Sort order ('asc' or 'desc').")] = 'asc' (alias 'sortOrder')¶
Sort order (‘asc’ or ‘desc’).