pub trait MigratorTrait: Send {
Show 13 methods
// Required method
fn migrations() -> Vec<Box<dyn MigrationTrait>>;
// Provided methods
fn get_migration_files() -> Vec<Migration> { ... }
fn get_migration_models<'life0, 'async_trait>(
db: &'life0 DatabaseConnection,
) -> Pin<Box<dyn Future<Output = Result<Vec<Model>, DbErr>> + Send + 'async_trait>>
where 'life0: 'async_trait,
Self: 'async_trait { ... }
fn get_migration_with_status<'life0, 'async_trait>(
db: &'life0 DatabaseConnection,
) -> Pin<Box<dyn Future<Output = Result<Vec<Migration>, DbErr>> + Send + 'async_trait>>
where 'life0: 'async_trait,
Self: 'async_trait { ... }
fn get_pending_migrations<'life0, 'async_trait>(
db: &'life0 DatabaseConnection,
) -> Pin<Box<dyn Future<Output = Result<Vec<Migration>, DbErr>> + Send + 'async_trait>>
where 'life0: 'async_trait,
Self: 'async_trait { ... }
fn get_applied_migrations<'life0, 'async_trait>(
db: &'life0 DatabaseConnection,
) -> Pin<Box<dyn Future<Output = Result<Vec<Migration>, DbErr>> + Send + 'async_trait>>
where 'life0: 'async_trait,
Self: 'async_trait { ... }
fn install<'life0, 'async_trait>(
db: &'life0 DatabaseConnection,
) -> Pin<Box<dyn Future<Output = Result<(), DbErr>> + Send + 'async_trait>>
where 'life0: 'async_trait { ... }
fn fresh<'life0, 'async_trait>(
db: &'life0 DatabaseConnection,
) -> Pin<Box<dyn Future<Output = Result<(), DbErr>> + Send + 'async_trait>>
where 'life0: 'async_trait,
Self: 'async_trait { ... }
fn refresh<'life0, 'async_trait>(
db: &'life0 DatabaseConnection,
) -> Pin<Box<dyn Future<Output = Result<(), DbErr>> + Send + 'async_trait>>
where 'life0: 'async_trait,
Self: 'async_trait { ... }
fn reset<'life0, 'async_trait>(
db: &'life0 DatabaseConnection,
) -> Pin<Box<dyn Future<Output = Result<(), DbErr>> + Send + 'async_trait>>
where 'life0: 'async_trait,
Self: 'async_trait { ... }
fn status<'life0, 'async_trait>(
db: &'life0 DatabaseConnection,
) -> Pin<Box<dyn Future<Output = Result<(), DbErr>> + Send + 'async_trait>>
where 'life0: 'async_trait,
Self: 'async_trait { ... }
fn up<'life0, 'async_trait>(
db: &'life0 DatabaseConnection,
steps: Option<u32>,
) -> Pin<Box<dyn Future<Output = Result<(), DbErr>> + Send + 'async_trait>>
where 'life0: 'async_trait,
Self: 'async_trait { ... }
fn down<'life0, 'async_trait>(
db: &'life0 DatabaseConnection,
steps: Option<u32>,
) -> Pin<Box<dyn Future<Output = Result<(), DbErr>> + Send + 'async_trait>>
where 'life0: 'async_trait,
Self: 'async_trait { ... }
}
Expand description
Performing migrations on a database
Required Methods§
Sourcefn migrations() -> Vec<Box<dyn MigrationTrait>>
fn migrations() -> Vec<Box<dyn MigrationTrait>>
Vector of migrations in time sequence
Provided Methods§
Sourcefn get_migration_files() -> Vec<Migration>
fn get_migration_files() -> Vec<Migration>
Get list of migrations wrapped in Migration
struct
Sourcefn get_migration_models<'life0, 'async_trait>(
db: &'life0 DatabaseConnection,
) -> Pin<Box<dyn Future<Output = Result<Vec<Model>, DbErr>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn get_migration_models<'life0, 'async_trait>(
db: &'life0 DatabaseConnection,
) -> Pin<Box<dyn Future<Output = Result<Vec<Model>, DbErr>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Get list of applied migrations from database
Sourcefn get_migration_with_status<'life0, 'async_trait>(
db: &'life0 DatabaseConnection,
) -> Pin<Box<dyn Future<Output = Result<Vec<Migration>, DbErr>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn get_migration_with_status<'life0, 'async_trait>(
db: &'life0 DatabaseConnection,
) -> Pin<Box<dyn Future<Output = Result<Vec<Migration>, DbErr>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Get list of migrations with status
Sourcefn get_pending_migrations<'life0, 'async_trait>(
db: &'life0 DatabaseConnection,
) -> Pin<Box<dyn Future<Output = Result<Vec<Migration>, DbErr>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn get_pending_migrations<'life0, 'async_trait>(
db: &'life0 DatabaseConnection,
) -> Pin<Box<dyn Future<Output = Result<Vec<Migration>, DbErr>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Get list of pending migrations
Sourcefn get_applied_migrations<'life0, 'async_trait>(
db: &'life0 DatabaseConnection,
) -> Pin<Box<dyn Future<Output = Result<Vec<Migration>, DbErr>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn get_applied_migrations<'life0, 'async_trait>(
db: &'life0 DatabaseConnection,
) -> Pin<Box<dyn Future<Output = Result<Vec<Migration>, DbErr>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Get list of applied migrations
Sourcefn install<'life0, 'async_trait>(
db: &'life0 DatabaseConnection,
) -> Pin<Box<dyn Future<Output = Result<(), DbErr>> + Send + 'async_trait>>where
'life0: 'async_trait,
fn install<'life0, 'async_trait>(
db: &'life0 DatabaseConnection,
) -> Pin<Box<dyn Future<Output = Result<(), DbErr>> + Send + 'async_trait>>where
'life0: 'async_trait,
Create migration table seaql_migrations
in the database
Sourcefn fresh<'life0, 'async_trait>(
db: &'life0 DatabaseConnection,
) -> Pin<Box<dyn Future<Output = Result<(), DbErr>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn fresh<'life0, 'async_trait>(
db: &'life0 DatabaseConnection,
) -> Pin<Box<dyn Future<Output = Result<(), DbErr>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Drop all tables from the database, then reapply all migrations
Sourcefn refresh<'life0, 'async_trait>(
db: &'life0 DatabaseConnection,
) -> Pin<Box<dyn Future<Output = Result<(), DbErr>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn refresh<'life0, 'async_trait>(
db: &'life0 DatabaseConnection,
) -> Pin<Box<dyn Future<Output = Result<(), DbErr>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Rollback all applied migrations, then reapply all migrations
Sourcefn reset<'life0, 'async_trait>(
db: &'life0 DatabaseConnection,
) -> Pin<Box<dyn Future<Output = Result<(), DbErr>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn reset<'life0, 'async_trait>(
db: &'life0 DatabaseConnection,
) -> Pin<Box<dyn Future<Output = Result<(), DbErr>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Rollback all applied migrations
Sourcefn status<'life0, 'async_trait>(
db: &'life0 DatabaseConnection,
) -> Pin<Box<dyn Future<Output = Result<(), DbErr>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn status<'life0, 'async_trait>(
db: &'life0 DatabaseConnection,
) -> Pin<Box<dyn Future<Output = Result<(), DbErr>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Check the status of all migrations
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.