class Preserves::Mapper::HasMany

Public Instance Methods

map!() click to toggle source
# File lib/preserves/mapper/has_many.rb, line 7
def map!
  assign_attribute(object, relation_name, relation_repo.map(relation_results_for_this_object))
end
relation_foreign_key() click to toggle source
# File lib/preserves/mapper/has_many.rb, line 15
def relation_foreign_key
  @relation_foreign_key ||= relation_settings.fetch(:foreign_key) { "#{mapping.model_class.to_s.downcase}_id" }
end
relation_results_for_this_object() click to toggle source
# File lib/preserves/mapper/has_many.rb, line 11
def relation_results_for_this_object
  @relation_results_for_this_object ||= relation_result_set.select{ |r| r[relation_foreign_key] == record.fetch(mapping.primary_key) }
end
relation_settings() click to toggle source
# File lib/preserves/mapper/has_many.rb, line 19
def relation_settings
  @relation_settings ||= mapping.has_many_mappings.fetch(relation_name)
end