Sha256: af5c0b39805574d268248c277b1865b3219c7bdd529a2f47d29269ed3ca45536

Contents?: true

Size: 1.19 KB

Versions: 20

Compression:

Stored size: 1.19 KB

Contents

module Abstractor
  module Methods
    module Models
      module AbstractorAbstractionSchema
        def self.included(base)
          base.send :include, SoftDelete

          # Associations
          base.send :belongs_to, :abstractor_object_type
          base.send :has_many, :abstractor_subjects
          base.send :has_many, :abstractor_abstraction_schema_predicate_variants
          base.send :has_many, :abstractor_abstraction_schema_object_values
          base.send :has_many, :abstractor_object_values, :through => :abstractor_abstraction_schema_object_values
          base.send :has_many, :object_relations,   :class_name => "Abstractor::AbstractorAbstractionSchemaRelation", :foreign_key => "object_id"
          base.send :has_many, :subject_relations,  :class_name => "Abstractor::AbstractorAbstractionSchemaRelation", :foreign_key => "subject_id"

          base.send :attr_accessible, :abstractor_object_type, :abstractor_object_type_id, :display_name, :predicate, :preferred_name, :deleted_at
        end

        # Instance Methods
        def predicate_variants
          [preferred_name].concat(abstractor_abstraction_schema_predicate_variants.map(&:value))
        end
      end
    end
  end
end

Version data entries

20 entries across 20 versions & 1 rubygems

Version Path
abstractor-2.1.2 lib/abstractor/methods/models/abstractor_abstraction_schema.rb
abstractor-2.1.01 lib/abstractor/methods/models/abstractor_abstraction_schema.rb
abstractor-2.1.0 lib/abstractor/methods/models/abstractor_abstraction_schema.rb
abstractor-2.0.1 lib/abstractor/methods/models/abstractor_abstraction_schema.rb
abstractor-2.0.0 lib/abstractor/methods/models/abstractor_abstraction_schema.rb
abstractor-1.0.23 lib/abstractor/methods/models/abstractor_abstraction_schema.rb
abstractor-1.0.22 lib/abstractor/methods/models/abstractor_abstraction_schema.rb
abstractor-1.0.20 lib/abstractor/methods/models/abstractor_abstraction_schema.rb
abstractor-1.0.19 lib/abstractor/methods/models/abstractor_abstraction_schema.rb
abstractor-1.0.18 lib/abstractor/methods/models/abstractor_abstraction_schema.rb
abstractor-1.0.17 lib/abstractor/methods/models/abstractor_abstraction_schema.rb
abstractor-1.0.16 lib/abstractor/methods/models/abstractor_abstraction_schema.rb
abstractor-1.0.15 lib/abstractor/methods/models/abstractor_abstraction_schema.rb
abstractor-1.0.14 lib/abstractor/methods/models/abstractor_abstraction_schema.rb
abstractor-1.0.13 lib/abstractor/methods/models/abstractor_abstraction_schema.rb
abstractor-1.0.12 lib/abstractor/methods/models/abstractor_abstraction_schema.rb
abstractor-1.0.11 lib/abstractor/methods/models/abstractor_abstraction_schema.rb
abstractor-1.0.10 lib/abstractor/methods/models/abstractor_abstraction_schema.rb
abstractor-1.0.9 lib/abstractor/methods/models/abstractor_abstraction_schema.rb
abstractor-1.0.8 lib/abstractor/methods/models/abstractor_abstraction_schema.rb