Trait leetcode_tui_rs::migrations::sea_orm::LoaderTrait
source · pub trait LoaderTrait {
type Model: ModelTrait;
// Required methods
fn load_one<'life0, 'life1, 'async_trait, R, S, C>(
&'life0 self,
stmt: S,
db: &'life1 C
) -> Pin<Box<dyn Future<Output = Result<Vec<Option<<R as EntityTrait>::Model>, Global>, DbErr>> + Send + 'async_trait, Global>>
where 'life0: 'async_trait,
'life1: 'async_trait,
C: ConnectionTrait + 'async_trait,
R: EntityTrait + 'async_trait,
<R as EntityTrait>::Model: Send + Sync,
S: EntityOrSelect<R> + 'async_trait,
<Self::Model as ModelTrait>::Entity: Related<R>,
Self: 'async_trait;
fn load_many<'life0, 'life1, 'async_trait, R, S, C>(
&'life0 self,
stmt: S,
db: &'life1 C
) -> Pin<Box<dyn Future<Output = Result<Vec<Vec<<R as EntityTrait>::Model, Global>, Global>, DbErr>> + Send + 'async_trait, Global>>
where 'life0: 'async_trait,
'life1: 'async_trait,
C: ConnectionTrait + 'async_trait,
R: EntityTrait + 'async_trait,
<R as EntityTrait>::Model: Send + Sync,
S: EntityOrSelect<R> + 'async_trait,
<Self::Model as ModelTrait>::Entity: Related<R>,
Self: 'async_trait;
fn load_many_to_many<'life0, 'life1, 'async_trait, R, S, V, C>(
&'life0 self,
stmt: S,
via: V,
db: &'life1 C
) -> Pin<Box<dyn Future<Output = Result<Vec<Vec<<R as EntityTrait>::Model, Global>, Global>, DbErr>> + Send + 'async_trait, Global>>
where 'life0: 'async_trait,
'life1: 'async_trait,
C: ConnectionTrait + 'async_trait,
R: EntityTrait + 'async_trait,
<R as EntityTrait>::Model: Send + Sync,
S: EntityOrSelect<R> + 'async_trait,
V: EntityTrait + 'async_trait,
<V as EntityTrait>::Model: Send + Sync,
<Self::Model as ModelTrait>::Entity: Related<R>,
Self: 'async_trait;
}
Expand description
This trait implements the Data Loader API
Required Associated Types§
sourcetype Model: ModelTrait
type Model: ModelTrait
Source model
Required Methods§
sourcefn load_one<'life0, 'life1, 'async_trait, R, S, C>(
&'life0 self,
stmt: S,
db: &'life1 C
) -> Pin<Box<dyn Future<Output = Result<Vec<Option<<R as EntityTrait>::Model>, Global>, DbErr>> + Send + 'async_trait, Global>>where
'life0: 'async_trait,
'life1: 'async_trait,
C: ConnectionTrait + 'async_trait,
R: EntityTrait + 'async_trait,
<R as EntityTrait>::Model: Send + Sync,
S: EntityOrSelect<R> + 'async_trait,
<Self::Model as ModelTrait>::Entity: Related<R>,
Self: 'async_trait,
fn load_one<'life0, 'life1, 'async_trait, R, S, C>( &'life0 self, stmt: S, db: &'life1 C ) -> Pin<Box<dyn Future<Output = Result<Vec<Option<<R as EntityTrait>::Model>, Global>, DbErr>> + Send + 'async_trait, Global>>where 'life0: 'async_trait, 'life1: 'async_trait, C: ConnectionTrait + 'async_trait, R: EntityTrait + 'async_trait, <R as EntityTrait>::Model: Send + Sync, S: EntityOrSelect<R> + 'async_trait, <Self::Model as ModelTrait>::Entity: Related<R>, Self: 'async_trait,
Used to eager load has_one relations
sourcefn load_many<'life0, 'life1, 'async_trait, R, S, C>(
&'life0 self,
stmt: S,
db: &'life1 C
) -> Pin<Box<dyn Future<Output = Result<Vec<Vec<<R as EntityTrait>::Model, Global>, Global>, DbErr>> + Send + 'async_trait, Global>>where
'life0: 'async_trait,
'life1: 'async_trait,
C: ConnectionTrait + 'async_trait,
R: EntityTrait + 'async_trait,
<R as EntityTrait>::Model: Send + Sync,
S: EntityOrSelect<R> + 'async_trait,
<Self::Model as ModelTrait>::Entity: Related<R>,
Self: 'async_trait,
fn load_many<'life0, 'life1, 'async_trait, R, S, C>( &'life0 self, stmt: S, db: &'life1 C ) -> Pin<Box<dyn Future<Output = Result<Vec<Vec<<R as EntityTrait>::Model, Global>, Global>, DbErr>> + Send + 'async_trait, Global>>where 'life0: 'async_trait, 'life1: 'async_trait, C: ConnectionTrait + 'async_trait, R: EntityTrait + 'async_trait, <R as EntityTrait>::Model: Send + Sync, S: EntityOrSelect<R> + 'async_trait, <Self::Model as ModelTrait>::Entity: Related<R>, Self: 'async_trait,
Used to eager load has_many relations
sourcefn load_many_to_many<'life0, 'life1, 'async_trait, R, S, V, C>(
&'life0 self,
stmt: S,
via: V,
db: &'life1 C
) -> Pin<Box<dyn Future<Output = Result<Vec<Vec<<R as EntityTrait>::Model, Global>, Global>, DbErr>> + Send + 'async_trait, Global>>where
'life0: 'async_trait,
'life1: 'async_trait,
C: ConnectionTrait + 'async_trait,
R: EntityTrait + 'async_trait,
<R as EntityTrait>::Model: Send + Sync,
S: EntityOrSelect<R> + 'async_trait,
V: EntityTrait + 'async_trait,
<V as EntityTrait>::Model: Send + Sync,
<Self::Model as ModelTrait>::Entity: Related<R>,
Self: 'async_trait,
fn load_many_to_many<'life0, 'life1, 'async_trait, R, S, V, C>( &'life0 self, stmt: S, via: V, db: &'life1 C ) -> Pin<Box<dyn Future<Output = Result<Vec<Vec<<R as EntityTrait>::Model, Global>, Global>, DbErr>> + Send + 'async_trait, Global>>where 'life0: 'async_trait, 'life1: 'async_trait, C: ConnectionTrait + 'async_trait, R: EntityTrait + 'async_trait, <R as EntityTrait>::Model: Send + Sync, S: EntityOrSelect<R> + 'async_trait, V: EntityTrait + 'async_trait, <V as EntityTrait>::Model: Send + Sync, <Self::Model as ModelTrait>::Entity: Related<R>, Self: 'async_trait,
Used to eager load many_to_many relations