Skip to content
This repository has been archived by the owner on May 2, 2024. It is now read-only.

daneharrigan/data_migration

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

data_migration v0.2
==============
data_migration allows you to separate data you need to load from your 
normal database migrations in a minimal way.

Example
=======

-Generate Migration
	script/generate data_migration BlockedDomains

-Generate Migration in specific directory
	script/generate data_migration BlockDomains PATH=db/bootstrap

	-Outputs:
		exists  db/data
		create  db/data/20090915161242_settings.rb

	-db/data/20090915161242_settings.rb:
		class BlockedDomains < ActiveRecord::Migration
		  def self.up
		  end
		end
		
	-Add your code (with create):
		def self.up
		    BlockedEmailDomain.create(:domain => "mailinator.com")
		    BlockedEmailDomain.create(:domain => "spamherelots.com")
		    BlockedEmailDomain.create(:domain => "disposeamail.com")
		end

	-Add/Remove your code (with add_data and remove_data):
		def self.up
		    add_data(BlockedEmailDomain, :domain => "mailinator.com")
		    add_data(BlockedEmailDomain, :domain => "spamherelots.com")
		end

		def self.down
		    remove_data(BlockedEmailDomain, :domain => "mailinator.com")
		    remove_data(BlockedEmailDomain, :domain => "spamherelots.com")
		end

	NOTE: add_data and remove_data work well for populating individual tables.
	      If you need to populate relationships between tables I recommend creating
	      and destroying each item the standard Rails way.

-Run Migration
	rake db:data:migrate

-Run Migration (from a different location)
	rake db:data:migrate[db/bootstrap]

	-Output
		==  BlockedDomains: migrating ===========================================================
		==  BlockedDomains: migrated (0.0020s) ==================================================

	This adds the data migration version nubmer to the 'schema_migrations' table so it will not
	be ran again.

Copyright (c) 2009 Knetwit Inc, released under the MIT license
Author(s): Heath Anderson

Updated by Dane Harrigan

About

[DEAD] A Ruby on Rails plugin that allows data to be loaded separately from normal database migrations in a minimal way.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Ruby 100.0%