Module: MongoHashie::MetaData::InstanceMethods

Defined in:
lib/mongo-hashie/meta_data.rb

Instance Method Summary collapse

Instance Method Details

#reset_keysObject



24
25
26
27
# File 'lib/mongo-hashie/meta_data.rb', line 24

def reset_keys
   = MetaDataProperties.first(:class_name => self.class.name)
  .destroy if 
end

#update_keysObject



4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
# File 'lib/mongo-hashie/meta_data.rb', line 4

def update_keys
   = MetaDataProperties.first(:class_name => self.class.name)
  if 
    updated = false
    keys.each do |key|
      if not MetaDataProperties.ignored_keys.include?(key) and not .key?(key)
        .send("#{key.to_sym}=", self.send(key.to_sym).class.name)
        updated = true
      end
      .save if updated
    end
  else
    properties_used = {:class_name => self.class.name}
    keys.each do |key|
      properties_used[key] = self.send(key.to_sym).class.name unless MetaDataProperties.ignored_keys.include?(key)
    end
    MetaDataProperties.create(properties_used)
  end
end