Sha256: b37b4acdaccda6ab22a6c04035d3ac19a57ae5ee0368dec6cd4fe6507fa403fa
Contents?: true
Size: 1.32 KB
Versions: 24
Compression:
Stored size: 1.32 KB
Contents
# frozen_string_literal: true module GoodJob # Base ActiveRecord class that all GoodJob models inherit from. # Parent class can be configured with +GoodJob.active_record_parent_class+. # @!parse # class BaseRecord < ActiveRecord::Base; end class BaseRecord < ActiveRecordParentClass self.abstract_class = true def self.migration_pending_warning! GoodJob.deprecator.warn(<<~DEPRECATION) GoodJob has pending database migrations. To create the migration files, run: rails generate good_job:update To apply the migration files, run: rails db:migrate DEPRECATION nil end # Checks for whether the schema is up to date. # Can be overriden by child class. # @return [Boolean] def self.migrated? return true if table_exists? migration_pending_warning! false end # Runs the block with self.logger silenced. # If self.logger is nil, simply runs the block. def self.with_logger_silenced(silent: true, &block) # Assign to a local variable, just in case it's modified in another thread concurrently logger = self.logger if silent && logger.respond_to?(:silence) logger.silence(&block) else yield end end ActiveSupport.run_load_hooks(:good_job_base_record, self) end end
Version data entries
24 entries across 24 versions & 1 rubygems