1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
use crate::{DbBackend, Statement};
use sea_query::QueryStatementBuilder;
pub trait QueryTrait {
type QueryStatement: QueryStatementBuilder;
fn query(&mut self) -> &mut Self::QueryStatement;
fn as_query(&self) -> &Self::QueryStatement;
fn into_query(self) -> Self::QueryStatement;
fn build(&self, db_backend: DbBackend) -> Statement {
let query_builder = db_backend.get_query_builder();
Statement::from_string_values_tuple(
db_backend,
self.as_query().build_any(query_builder.as_ref()),
)
}
}