pub struct QueryParams<'q, T> {
pub pagination: QueryPaginationParams,
pub sort: QuerySortParams,
pub search: QuerySearchParams,
pub date_range: QueryDateRangeParams,
pub filters: HashMap<String, QueryFilterCondition>,
pub simple_filters: HashMap<String, Option<String>>,
/* private fields */
}Expand description
Complete query parameters with all configuration options.
This is the main parameter structure used throughout the library. It contains all pagination, sorting, filtering, and search configuration.
§Type Parameters
'q- Lifetime for query parameter referencesT- The model type being queried
§Examples
use sqlx_paginated::{QueryParams, QueryParamsBuilder, QuerySortDirection};
use serde::Serialize;
#[derive(Serialize, Default)]
struct User {
name: String,
email: String,
}
let params = QueryParamsBuilder::<User>::new()
.with_pagination(1, 20)
.with_sort("name", QuerySortDirection::Ascending)
.with_search("john", vec!["name", "email"])
.build();Fields§
§pagination: QueryPaginationParamsPagination configuration (page, page_size)
sort: QuerySortParamsSort configuration (column, direction)
search: QuerySearchParamsSearch configuration (term, columns)
date_range: QueryDateRangeParamsDate range filtering configuration
filters: HashMap<String, QueryFilterCondition>Filter conditions with operators
simple_filters: HashMap<String, Option<String>>👎Deprecated since 0.3.0: Use filters with QueryFilterCondition instead
Legacy simple filters (backward compatibility)
Deprecated: Use filters with QueryFilterCondition instead
Trait Implementations§
Source§impl<'q, T: Clone> Clone for QueryParams<'q, T>
impl<'q, T: Clone> Clone for QueryParams<'q, T>
Source§fn clone(&self) -> QueryParams<'q, T>
fn clone(&self) -> QueryParams<'q, T>
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl<'q, T: Default> Default for QueryParams<'q, T>
impl<'q, T: Default> Default for QueryParams<'q, T>
Source§fn default() -> QueryParams<'q, T>
fn default() -> QueryParams<'q, T>
Returns the “default value” for a type. Read more
Source§impl<'q, T> From<FlatQueryParams> for QueryParams<'q, T>
impl<'q, T> From<FlatQueryParams> for QueryParams<'q, T>
Source§fn from(params: FlatQueryParams) -> Self
fn from(params: FlatQueryParams) -> Self
Converts to this type from the input type.
Auto Trait Implementations§
impl<'q, T> Freeze for QueryParams<'q, T>
impl<'q, T> RefUnwindSafe for QueryParams<'q, T>where
T: RefUnwindSafe,
impl<'q, T> Send for QueryParams<'q, T>where
T: Sync,
impl<'q, T> Sync for QueryParams<'q, T>where
T: Sync,
impl<'q, T> Unpin for QueryParams<'q, T>
impl<'q, T> UnwindSafe for QueryParams<'q, T>where
T: RefUnwindSafe,
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more