abstract class Hirondelle::Migration

Overview

Classe abstraite représentant une migration de base de données. Toutes les migrations doivent hériter de cette classe et implémenter les méthodes #up et #down.

Exemple

class CreateUsersTable < Hirondelle::Migration
  def initialize
    super(1) # Version de la migration
  end

  def up(db : DB::Database)
    db.exec <<-SQL
      CREATE TABLE users (
        id SERIAL PRIMARY KEY,
        name TEXT NOT NULL
      )
    SQL
  end

  def down(db : DB::Database)
    db.exec "DROP TABLE users"
  end
end

Included Modules

Defined in:

hirondelle.cr

Constructors

Instance Method Summary

Class methods inherited from module Hirondelle

migrations migrations, register(migration : Migration) register

Constructor Detail

def self.new(version : Int64) #

Initialise une migration avec une version donnée.

  • #version : La version de la migration (doit être unique).

[View source]

Instance Method Detail

abstract def down(db : DB::Database) #

Annule la migration.

  • db : La connexion à la base de données.

[View source]
abstract def up(db : DB::Database) #

Applique la migration.

  • db : La connexion à la base de données.

[View source]
def version : Int64 #

Version de la migration.


[View source]