class ActiveRecord::Base

Constants

INVALID_FOR_COMPOSITE_KEYS
NOT_IMPLEMENTED_YET

Public Class Methods

composite?() click to toggle source
# File lib/composite_primary_keys/base.rb, line 39
def composite?
  false
end
primary_key=(keys) click to toggle source
# File lib/composite_primary_keys/base.rb, line 11
      def primary_key=(keys)
        unless keys.kind_of?(Array)
          self.primary_key_without_composite_key_support = keys
          return
        end

        @primary_keys = keys.map { |k| k.to_s }.to_composite_keys

        class_eval <<-EOV
          extend  CompositeClassMethods
          include CompositeInstanceMethods
        EOV
      end
primary_key_without_composite_key_support=(keys)
Alias for: primary_key=
primary_keys=(keys)
Alias for: primary_key=
set_primary_keys(*keys) click to toggle source
# File lib/composite_primary_keys/base.rb, line 26
def set_primary_keys(*keys)
  ActiveSupport::Deprecation.warn(
      "Calling set_primary_keys is deprecated. Please use `self.primary_keys = keys` instead."
  )

  keys = keys.first if keys.first.is_a?(Array)
  if keys.length == 1
    self.primary_key = keys.first
  else
    self.primary_keys = keys
  end
end

Public Instance Methods

composite?() click to toggle source
# File lib/composite_primary_keys/base.rb, line 44
def composite?
  self.class.composite?
end