class Sequel::MigrationDSL
Internal class used by the Sequel.migration
DSL, part of the migration
extension.
Attributes
The underlying SimpleMigration
instance
Public Class Methods
Source
# File lib/sequel/extensions/migration.rb 120 def self.create(&block) 121 new(&block).migration 122 end
Source
# File lib/sequel/extensions/migration.rb 125 def initialize(&block) 126 @migration = SimpleMigration.new 127 Migration.descendants << migration 128 instance_exec(&block) 129 end
Create a new migration class, and instance_exec the block.
Public Instance Methods
Source
# File lib/sequel/extensions/migration.rb 158 def change(&block) 159 migration.up = block 160 migration.down = MigrationReverser.new.reverse(&block) 161 end
Creates a reversible migration. This is the same as creating the same block with up
, but it also calls the block and attempts to create a down
block that will reverse the changes made by the block.
There are no guarantees that this will work perfectly in all cases, but it works for some simple cases.
Source
# File lib/sequel/extensions/migration.rb 132 def down(&block) 133 migration.down = block 134 end
Defines the migration’s down action.
Source
# File lib/sequel/extensions/migration.rb 137 def no_transaction 138 migration.use_transactions = false 139 end
Disable the use of transactions for the related migration
Source
# File lib/sequel/extensions/migration.rb 171 def revert(&block) 172 migration.down = block 173 migration.up = MigrationReverser.new.reverse(&block) 174 end
Creates a revert migration. This is the same as creating the same block with down
, but it also calls the block and attempts to create a up
block that will reverse the changes made by the block. This is designed to revert the changes in the provided block.
There are no guarantees that this will work perfectly in all cases, but it works for some simple cases.
Source
# File lib/sequel/extensions/migration.rb 142 def transaction 143 migration.use_transactions = true 144 end
Enable the use of transactions for the related migration
Source
# File lib/sequel/extensions/migration.rb 147 def up(&block) 148 migration.up = block 149 end
Defines the migration’s up action.