module DeletedAt::Core

Public Class Methods

has_deleted_at_column?(klass) click to toggle source
# File lib/deleted_at/core.rb, line 22
def self.has_deleted_at_column?(klass)
  klass.columns.map(&:name).include?(klass.deleted_at.dig(:column).to_s)
end
prepended(subclass) click to toggle source
# File lib/deleted_at/core.rb, line 7
def self.prepended(subclass)
  class << subclass
    cattr_accessor :deleted_at
    self.deleted_at = {}
    alias all_without_deleted_at all
  end

  subclass.extend(ClassMethods)
end
raise_missing(klass) click to toggle source
# File lib/deleted_at/core.rb, line 17
def self.raise_missing(klass)
  message = "Missing `#{klass.deleted_at[:column]}` in `#{klass.name}` when trying to employ `deleted_at`"
  raise(DeletedAt::MissingColumn, message)
end