Method: SimpleRecord::ActiveSdb::Base#reload

Defined in:
lib/simple_record/active_sdb.rb

#reloadObject

Reload attributes from SDB. Replaces in-memory attributes.

item = Client.find_by_name('Cat')  #=> #<Client:0xb77d0d40 @attributes={"id"=>"2937601a-e45d-11dc-a75f-001bfc466dd7"}, @new_record=false>
item.reload                        #=> #<Client:0xb77d0d40 @attributes={"id"=>"2937601a-e45d-11dc-a75f-001bfc466dd7", "name"=>["Cat"], "toys"=>["Jons socks", "clew", "mice"]}, @new_record=false>


750
751
752
753
754
755
756
757
758
759
760
761
# File 'lib/simple_record/active_sdb.rb', line 750

def reload
    raise_on_id_absence
    old_id      = id
    attrs       = connection.get_attributes(domain, id)[:attributes]
    @attributes = {}
    unless attrs.blank?
        attrs.each { |attribute, values| @attributes[attribute] = values }
        @attributes['id'] = old_id
    end
    mark_as_old
    @attributes
end