module Datamappify::Data::Provider::ActiveRecord

Public Class Methods

build_record_association(attribute, default_source_class) click to toggle source

@return [void]

# File lib/datamappify/data/provider/active_record.rb, line 24
          def build_record_association(attribute, default_source_class)
            default_source_class.class_eval <<-CODE, __FILE__, __LINE__ + 1
              has_one :#{attribute.source_key}
            CODE

            attribute.source_class.class_eval <<-CODE, __FILE__, __LINE__ + 1
              belongs_to :#{default_source_class.model_name.element}
            CODE
          end
build_record_class(source_class_name) click to toggle source

@param source_class_name (see CommonProvider::ModuleMethods#find_or_build_record_class)

@return [ActiveRecord::Base]

# File lib/datamappify/data/provider/active_record.rb, line 11
          def build_record_class(source_class_name)
            class_eval <<-CODE, __FILE__, __LINE__ + 1
              module Datamappify::Data::Record::ActiveRecord
                class #{source_class_name} < ::ActiveRecord::Base
                  self.table_name = '#{source_class_name.pluralize.gsub('::', '_').underscore}'
                end
              end
            CODE

            "Datamappify::Data::Record::ActiveRecord::#{source_class_name}".constantize
          end
build_record_reversed_association(attribute, default_source_class) click to toggle source

@return [void]

# File lib/datamappify/data/provider/active_record.rb, line 35
          def build_record_reversed_association(attribute, default_source_class)
            default_source_class.class_eval <<-CODE, __FILE__, __LINE__ + 1
              belongs_to :#{attribute.source_key}
            CODE
          end