Expand description
Database seeding with execution tracking.
Provides the DatabaseSeeder trait, the DatabaseSeederRunner that
runs seeders in dependency order inside a single transaction, the
EntitySeeder helper for entity-specific seeders, and the
__database_seeders tracking table (see ensure_table and entity).
Each seeder runs once: completed names are recorded in
__database_seeders and skipped on later runs. Deletion runs in reverse
order and removes the tracking rows.
ⓘ
use shared_framework::data::seed::DatabaseSeederRunner;
let runner = DatabaseSeederRunner::new().add(MySeeder);
runner.seed(&db).await?;Re-exports§
pub use entity::Entity as SeederEntryEntity;pub use entity::ModelEx as SeederEntryModel;pub use entity::ActiveModel as SeederEntryActiveModel;pub use entity::ModelEx as SeederEntry;pub use DatabaseSeeder as RepositorySeeder;
Modules§
- entity
- Seeder tracking entity.
Structs§
- Database
Seeder Runner - Runs registered seeders in order inside a single transaction.
- Entity
Seeder - Helper marking an entity-specific seeder.
Traits§
- Database
Seeder - Trait for database seeders.
Functions§
- ensure_
table - Creates the
__database_seederstracking table when missing.
Type Aliases§
- Database
Seeder Helper - Alias for
DatabaseSeederRunner. - Seeder
Runner Deprecated - Deprecated alias for
DatabaseSeederRunner.