Sha256: 0ab2ed141f1f97f8714dbdf4efb9695b8891f38d0220faada28ae3c12644de73

Contents?: true

Size: 628 Bytes

Versions: 9

Compression:

Stored size: 628 Bytes

Contents

class AddOneRoleStrategy < ActiveRecord::Migration
  class << self

    def up          
      create_roles
      add_user_role
    end

    def down      
      drop_roles
      remove_user_role
    end

    protected

    def add_user_role
      change_table :<%= table_name %> do |t|
        t.integer :role_id
      end
    end

    def remove_user_role
      change_table :<%= table_name %> do |t|
        t.remove :role_id
      end
    end


    def create_roles
      create_table :roles do |t|
        t.string  :name
        t.timestamps
      end
    end

    def drop_roles
      drop_table :roles
    end
  end
end

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
roles_active_record-0.3.2 lib/generators/active_record/roles_migration/templates/add_one_role_strategy.erb
roles_active_record-0.3.1 lib/generators/active_record/roles_migration/templates/add_one_role_strategy.erb
roles_active_record-0.2.5 lib/generators/active_record/roles_migration/templates/add_one_role_strategy.erb
roles_active_record-0.2.4 lib/generators/active_record/roles_migration/templates/add_one_role_strategy.erb
roles_active_record-0.2.3 lib/generators/active_record/roles_migration/templates/add_one_role_strategy.erb
roles_active_record-0.2.2 lib/generators/active_record/roles_migration/templates/add_one_role_strategy.erb
roles_active_record-0.2.1 lib/generators/active_record/roles_migration/templates/add_one_role_strategy.erb
roles_active_record-0.2.0 lib/generators/active_record/roles_migration/templates/add_one_role_strategy.erb
roles_active_record-0.1.0 lib/generators/active_record/roles_migration/templates/add_one_role_strategy.erb