Expand description
OData integration for SeaORM with security-scoped pagination.
This module provides SeaORM-specific adapters for OData queries:
ODatafilter compilation toSeaORMconditions (legacyFieldMapand newFilterNode)- Cursor-based pagination with
ODataordering - Security-scoped pagination via
OPagerbuilder
§Filter DSL
The core filter types (FilterField, FilterNode, FilterOp, FieldKind) are defined
in modkit-odata as part of the OData protocol contract. Import them from:
ⓘ
use modkit_odata::filter::{FilterField, FilterNode, FilterOp, FieldKind};§Modules
core: CoreODatatoSeaORMtranslation (filters, cursors, ordering) - legacyFieldMapbasedsea_orm_filter: Type-safe mapping fromFilterNode<F>toSeaORMconditionspager: Fluent builder for secure +ODatapagination
Re-exports§
pub use sea_orm_filter::FieldToColumn;pub use sea_orm_filter::LimitCfg;pub use sea_orm_filter::ODataFieldMapping;pub use sea_orm_filter::encode_cursor_value;pub use sea_orm_filter::filter_node_to_condition;pub use sea_orm_filter::paginate_odata;pub use sea_orm_filter::parse_cursor_value;
Modules§
- pager
- Minimal fluent builder for combining Secure ORM scoping with
ODatapagination. - sea_
orm_ filter - Generic mapping from type-safe
FilterNodeto SeaORMConditions.
Structs§
Enums§
Traits§
- Cursor
Apply Ext - Extension trait for applying cursor-based pagination
- OData
Ext - Apply an optional
ODatafilter (via wrapper) to a plainSeaORMSelect. - OData
Order Ext - Extension trait for applying ordering (legacy version with
ODataBuildError) - OData
Order Page Ext - Extension trait for applying ordering with centralized error handling
- OData
Query Ext - Extension trait for applying full
ODataquery (filter + cursor + order)
Functions§
- build_
cursor_ for_ model - Build a cursor from a model using the effective order and field map extractors.
- build_
cursor_ predicate - Build a cursor predicate for pagination. This builds the lexicographic OR-chain condition for cursor-based pagination.
- ensure_
tiebreaker - Ensure a tiebreaker field is present in the order
- expr_
to_ condition - Convert an
ODatafilter expression AST to aSeaORMCondition. - paginate_
with_ odata - One-shot pagination combiner that handles filter → cursor predicate → order → overfetch/trim → build cursors.