async fn fetch_page_by_wrapper<T>(
        &self,
        context_id: &str,
        w: &Wrapper,
        page: &dyn IPageRequest,
    ) -> Result<Page<T>>
    where
        T: CRUDTable,
    {
        let sql = make_select_sql::<T>(context_id, &self, &T::table_columns(), &w)?;
        self.fetch_page(context_id, sql.as_str(), &w.args, page)
            .await
    }
/// fetch page database record list by a wrapper
fetch page database record list by a wrapper
fetch page database record list by a wrapper
async fn fetch_page_by_wrapper<T>(
        &self,
        context_id: &str,
        w: &Wrapper,
        page: &dyn IPageRequest,
    ) -> Result<Page<T>>
    where
        T: CRUDTable,
    {
        let sql = make_select_sql::<T>(context_id, &self, &T::table_columns(), &w)?;
        self.fetch_page(context_id, sql.as_str(), &w.args, page)
            .await
    }
async fn fetch_page_by_wrapper < T > ( & self , context_id : & str , w : & Wrapper , page : & dyn IPageRequest , ) -> Result < Page < T > > where T : CRUDTable , { let sql = make_select_sql :: < T > ( context_id , & self , & T :: table_columns ( ) , & w ) ? ; self . fetch_page ( context_id , sql . as_str ( ) , & w . args , page ) . await }
fetch page database record list by a wrapper
fetch page database record list by a wrapper
&self
context_id
&str
w
&Wrapper
page
&dyn IPageRequest
&self
context_id
&str
w
&Wrapper
page
&dyn IPageRequest