diff options
| author | Teddy Wing | 2012-05-30 21:29:27 -0400 |
|---|---|---|
| committer | Teddy Wing | 2012-05-30 21:29:27 -0400 |
| commit | 75e0c4ecef65f9ae707dbc8abc1cd2c8ae9a39b4 (patch) | |
| tree | 1901e9011b4fa4224303720213b73f3ab3722ca6 | |
| parent | 21d5ee288e356f7ec9cc2ad45128c6b8073fdc05 (diff) | |
| download | inboxes-75e0c4ecef65f9ae707dbc8abc1cd2c8ae9a39b4.tar.bz2 | |
Generators: removed inboxes_settings table creation from install, moved it to add_inboxes_settings. Not sure if this is a good thing.
| -rw-r--r-- | lib/generators/inboxes/add_inboxes_settings_generator.rb | 36 | ||||
| -rw-r--r-- | lib/generators/inboxes/templates/add_inboxes_settings.rb | 10 | ||||
| -rw-r--r-- | lib/generators/inboxes/templates/install.rb | 8 |
3 files changed, 46 insertions, 8 deletions
diff --git a/lib/generators/inboxes/add_inboxes_settings_generator.rb b/lib/generators/inboxes/add_inboxes_settings_generator.rb new file mode 100644 index 0000000..64e2f54 --- /dev/null +++ b/lib/generators/inboxes/add_inboxes_settings_generator.rb @@ -0,0 +1,36 @@ +require 'rails/generators' +require 'rails/generators/migration' + +module Inboxes + module Generators + class AddInboxesSettingsGenerator < Rails::Generators::Base + include Rails::Generators::Migration + + source_root File.expand_path("../templates", __FILE__) + + desc "Generates migration for Inboxes Settings" + + def self.orm + Rails::Generators.options[:rails][:orm] + end + + def self.orm_has_migration? + [:active_record].include? orm + end + + def self.next_migration_number(dirname) + if ActiveRecord::Base.timestamped_migrations + migration_number = Time.now.utc.strftime("%Y%m%d%H%M%S").to_i + migration_number += 1 + migration_number.to_s + else + "%.3d" % (current_migration_number(dirname) + 1) + end + end + + def copy_migration + migration_template 'add_inboxes_settings.rb', 'db/migrate/add_inboxes_settings_inboxes.rb' + end + end + end +end diff --git a/lib/generators/inboxes/templates/add_inboxes_settings.rb b/lib/generators/inboxes/templates/add_inboxes_settings.rb new file mode 100644 index 0000000..a17dc81 --- /dev/null +++ b/lib/generators/inboxes/templates/add_inboxes_settings.rb @@ -0,0 +1,10 @@ +class AddInboxesSettingsInboxes < ActiveRecord::Migration + def self.change + create_table :inboxes_settings do |t| + t.references :user + t.boolean :send_email_notification, :default => 1 + + t.timestamps + end + end +end diff --git a/lib/generators/inboxes/templates/install.rb b/lib/generators/inboxes/templates/install.rb index 18a8a6c..472cd95 100644 --- a/lib/generators/inboxes/templates/install.rb +++ b/lib/generators/inboxes/templates/install.rb @@ -20,19 +20,11 @@ class InstallInboxes < ActiveRecord::Migration t.timestamps end - - create_table :inboxes_settings do |t| - t.references :user - t.boolean :send_email_notification, :default => 1 - - t.timestamps - end end def self.down drop_table :speakers drop_table :discussions drop_table :messages - drop_table :inboxes_settings end end |
