class Sequel::MigrationDSL
Internal class used by the Sequel.migration
DSL, part of the migration
extension.
Attributes
migration[R]
The underlying SimpleMigration
instance
Public Class Methods
create(&block)
click to toggle source
# File lib/sequel/extensions/migration.rb 117 def self.create(&block) 118 new(&block).migration 119 end
new(&block)
click to toggle source
Create a new migration class, and instance_exec the block.
# File lib/sequel/extensions/migration.rb 122 def initialize(&block) 123 @migration = SimpleMigration.new 124 Migration.descendants << migration 125 instance_exec(&block) 126 end
Public Instance Methods
change(&block)
click to toggle source
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.
# File lib/sequel/extensions/migration.rb 155 def change(&block) 156 migration.up = block 157 migration.down = MigrationReverser.new.reverse(&block) 158 end
down(&block)
click to toggle source
Defines the migration's down action.
# File lib/sequel/extensions/migration.rb 129 def down(&block) 130 migration.down = block 131 end
no_transaction()
click to toggle source
Disable the use of transactions for the related migration
# File lib/sequel/extensions/migration.rb 134 def no_transaction 135 migration.use_transactions = false 136 end
transaction()
click to toggle source
Enable the use of transactions for the related migration
# File lib/sequel/extensions/migration.rb 139 def transaction 140 migration.use_transactions = true 141 end
up(&block)
click to toggle source
Defines the migration's up action.
# File lib/sequel/extensions/migration.rb 144 def up(&block) 145 migration.up = block 146 end