class ActiveRecord::Generators::MagnetikGenerator

Public Class Methods

next_migration_number(dirname) click to toggle source

Implement the required interface for Rails::Generators::Migration.

# File lib/generators/active_record/magnetik_generator.rb, line 18
def self.next_migration_number(dirname)
  next_migration_number = current_migration_number(dirname) + 1
  if ActiveRecord::Base.timestamped_migrations
    [Time.now.utc.strftime('%Y%m%d%H%M%S'), '%.14d' % next_migration_number].max
  else
    '%.3d' % next_migration_number
  end
end

Public Instance Methods

copy_migrations() click to toggle source
# File lib/generators/active_record/magnetik_generator.rb, line 10
def copy_migrations
  if (behavior == :invoke && model_exists?)
    migration_template 'migration_customers.rb', "db/migrate/make_#{table_name}_magnetik_customers.rb"
    migration_template 'migration_credit_cards.rb', 'db/migrate/magnetik_create_credit_cards.rb'
  end
end
model_exists?() click to toggle source
# File lib/generators/active_record/magnetik_generator.rb, line 27
def model_exists?
  File.exists?(File.join(destination_root, model_path))
end
model_path() click to toggle source
# File lib/generators/active_record/magnetik_generator.rb, line 31
def model_path
  @model_path ||= File.join("app", "models", "#{file_path}.rb")
end