pub trait Migration: Sync {
    fn up<'life0, 'async_trait>(
        &'life0 self,
        env: Env
    ) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>
    where
        Self: 'async_trait,
        'life0: 'async_trait
; fn down<'life0, 'async_trait>(
        &'life0 self,
        _env: Env
    ) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>
    where
        Self: 'async_trait,
        'life0: 'async_trait
, { ... } fn get_id(&self) -> &str { ... } }

Required Methods§

Runs a migration.

Provided Methods§

Rollbacks a migration. Since not every migration could be rollbacked and it often happens there is a blank implementation

A status about a migration will be stored in a db collection with the following document id We can pass an id manually otherwise it will be based on the type name so that uniqueness per project is guaranteed out of the box

Implementors§