module Abstractor::Methods::Models::AbstractorSubject

Public Class Methods

included(base) click to toggle source
# File lib/abstractor/methods/models/abstractor_subject.rb, line 6
def self.included(base)
  base.send :include, SoftDelete

  # Associations
  base.send :belongs_to, :abstractor_abstraction_schema

  base.send :has_one, :abstractor_subject_group_member
  base.send :has_one, :abstractor_subject_group, :through => :abstractor_subject_group_member

  base.send :has_many, :abstractor_abstractions
  base.send :has_many, :abstractor_abstraction_sources

  base.send :has_many, :object_relations,   :class_name => "Abstractor::AbstractorSubjectRelation", :foreign_key => "object_id"
  base.send :has_many, :subject_relations,  :class_name => "Abstractor::AbstractorSubjectRelation", :foreign_key => "subject_id"


  # base.send :attr_accessible, :abstractor_abstraction_schema, :abstractor_abstraction_schema_id, :subject_type, :dynamic_list_method
  base.send(:include, InstanceMethods)
end