pub async fn find_all<T>(
    collection_name: &str,
    db: &Database
) -> Result<Vec<T>, Error> where
    for<'a> T: DeserializeOwned + Unpin + Send + Sync