💥 Replace migration_item! macro with migrations!

This commit is contained in:
Manuel Cillero 2023-09-03 08:38:54 +02:00
parent b934011516
commit 507015d5c9
5 changed files with 23 additions and 16 deletions

View file

@ -31,11 +31,11 @@ impl ModuleTrait for Node {
} }
fn migrations(&self) -> Vec<MigrationItem> { fn migrations(&self) -> Vec<MigrationItem> {
vec![ migrations![
migration_item!(m20220316_000001_create_table_node_type), m20220316_000001_create_table_node_type,
migration_item!(m20220316_000002_create_table_node), m20220316_000002_create_table_node,
migration_item!(m20220316_000003_create_table_node_access), m20220316_000003_create_table_node_access,
migration_item!(m20220316_000004_create_table_node_revision), m20220316_000004_create_table_node_revision,
] ]
} }
} }

View file

@ -31,11 +31,11 @@ impl ModuleTrait for User {
} }
fn migrations(&self) -> Vec<MigrationItem> { fn migrations(&self) -> Vec<MigrationItem> {
vec![ migrations![
migration_item!(m20220312_000001_create_table_role), m20220312_000001_create_table_role,
migration_item!(m20220312_000002_create_table_role_permission), m20220312_000002_create_table_role_permission,
migration_item!(m20220312_000003_create_table_user), m20220312_000003_create_table_user,
migration_item!(m20220312_000004_create_table_user_role), m20220312_000004_create_table_user_role,
] ]
} }
} }

View file

@ -4,7 +4,7 @@ use crate::core::theme::ThemeRef;
use crate::{service, util, Handle}; use crate::{service, util, Handle};
#[cfg(feature = "database")] #[cfg(feature = "database")]
use crate::db::MigrationItem; use crate::{db::MigrationItem, migrations};
pub type ModuleRef = &'static dyn ModuleTrait; pub type ModuleRef = &'static dyn ModuleTrait;
@ -45,7 +45,7 @@ pub trait ModuleTrait: ModuleBase + Send + Sync {
#[cfg(feature = "database")] #[cfg(feature = "database")]
#[allow(unused_variables)] #[allow(unused_variables)]
fn migrations(&self) -> Vec<MigrationItem> { fn migrations(&self) -> Vec<MigrationItem> {
vec![] migrations![]
} }
#[allow(unused_variables)] #[allow(unused_variables)]

View file

@ -133,8 +133,15 @@ macro_rules! pub_migration {
} }
#[macro_export] #[macro_export]
macro_rules! migration_item { macro_rules! migrations {
( $migration_module:ident ) => {{ () => {
Box::new(migration::$migration_module::Migration) Vec::<MigrationItem>::new()
};
( $($migration_module:ident),+ $(,)? ) => {{
let mut m = Vec::<MigrationItem>::new();
$(
m.push(Box::new(migration::$migration_module::Migration));
)*
m
}}; }};
} }

View file

@ -36,7 +36,7 @@ pub use crate::locale::*;
pub use crate::datetime::*; pub use crate::datetime::*;
#[cfg(feature = "database")] #[cfg(feature = "database")]
pub use crate::{db, db::*, migration_item, pub_migration}; pub use crate::{db, db::*, migrations, pub_migration};
pub use crate::service; pub use crate::service;
pub use crate::service::HttpMessage; pub use crate::service::HttpMessage;