class AsyncActiveJob::ActiveRecordGenerator

Public Class Methods

next_migration_number(dirname) click to toggle source
# File lib/generators/async_active_job/active_record_generator.rb, line 18
def self.next_migration_number(dirname)
  ActiveRecord::Generators::Base.next_migration_number dirname
end

Public Instance Methods

create_migration_file() click to toggle source
# File lib/generators/async_active_job/active_record_generator.rb, line 12
def create_migration_file
  migration_template 'migration.rb.erb',
                     'db/migrate/create_async_active_jobs.rb',
                     migration_version: migration_version
end

Private Instance Methods

migration_version() click to toggle source
# File lib/generators/async_active_job/active_record_generator.rb, line 24
def migration_version
  "[#{ActiveRecord::VERSION::MAJOR}.#{ActiveRecord::VERSION::MINOR}]" if ActiveRecord::VERSION::MAJOR >= 5
end
next_migration_number(dirname) click to toggle source
# File lib/generators/async_active_job/active_record_generator.rb, line 28
def 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'), format('%.14d', next_migration_number)].max
  else
    format('%.3d', next_migration_number)
  end
end