angel3_migration 8.3.0 angel3_migration: ^8.3.0 copied to clipboard
The abstract classes for implementing database migration in Angel3 framework. Designed to work with Angel3 ORM.
/// These are straightforward migrations.
///
/// You will likely never have to actually write these yourself.
library angel3_migration.example.todo;
import 'package:angel3_migration/angel3_migration.dart';
class UserMigration implements Migration {
@override
void up(Schema schema) {
schema.create('users', (table) {
table
..serial('id').primaryKey()
..varChar('username', length: 32).unique()
..varChar('password')
..boolean('account_confirmed').defaultsTo(false);
});
}
@override
void down(Schema schema) {
schema.drop('users');
}
}
class TodoMigration implements Migration {
@override
void up(Schema schema) {
schema.create('todos', (table) {
table
..serial('id').primaryKey()
..integer('user_id').references('users', 'id').onDeleteCascade()
..varChar('text')
..boolean('completed').defaultsTo(false);
});
}
@override
void down(Schema schema) {
schema.drop('todos');
}
}