Module: PluginAWeek::PluginMigrations
- Defined in:
- lib/plugin_migrations.rb,
lib/plugin_migrations/migrator.rb,
lib/plugin_migrations/extensions/plugin.rb,
lib/plugin_migrations/extensions/schema_statements.rb
Overview
Adds support for running migrations and loading fixtures from plugins
Defined Under Namespace
Modules: Extensions Classes: Migrator
Class Method Summary collapse
-
.load_fixtures(plugin_names = nil, fixtures = nil) ⇒ Object
Load plugin fixtures into the current environment’s database.
-
.migrate(plugin_names = nil, version = nil) ⇒ Object
Migrate the database through scripts in plugin_xyz/db/migrate.
Class Method Details
.load_fixtures(plugin_names = nil, fixtures = nil) ⇒ Object
Load plugin fixtures into the current environment’s database. Load fixtures for a specific plugin using plugin_names
, specific fixtures using fixtures
21 22 23 24 |
# File 'lib/plugin_migrations.rb', line 21 def load_fixtures(plugin_names = nil, fixtures = nil) require 'active_record/fixtures' Rails.plugins.find_by_names(plugin_names).each {|plugin| plugin.load_fixtures(fixtures)} end |
.migrate(plugin_names = nil, version = nil) ⇒ Object
Migrate the database through scripts in plugin_xyz/db/migrate. Specify target plugins through plugin_names. The version can only be used when targeting specific plugins.
13 14 15 16 |
# File 'lib/plugin_migrations.rb', line 13 def migrate(plugin_names = nil, version = nil) version = version.to_i if version Rails.plugins.find_by_names(plugin_names).each {|plugin| plugin.migrate(version)} end |