                 try self.edit(resource, changes: values)
             }
                 
-                // create resource and set values
+            // create resource and set values
             else {
                 
                 try self.create(resource, initialValues: values)
             }
             
-        case let (.Edit(resource, _), .Edit(values)):
+        case (let .Edit(resource, _), .Edit(var values)):
             
             try self.createCachePlaceholders(values, entityName: resource.entityName)
+            
+            // set cache date
+            if let dateCachedAttributeName = dateCachedAttributeName {
+                
+                values[dateCachedAttributeName] = Value.Attribute(.Date(Date()))
+            }
             
             // update values
             if try self.exists(resource) {

                try self.edit(resource, changes: values)
            }
                
                // create resource and set values
            else {
                
                try self.create(resource, initialValues: values)
            }
            
        case let (.Create(entityName, _), .Create(resourceID, values)):
            
            try self.createCachePlaceholders(values, entityName: entityName)
            
            let resource = Resource(entityName, resourceID)
            

        
        let response = try self.client.send(request)
        
        try self.cacheStore.cacheResponse(response, forRequest: request, dateCachedAttributeName: dateCachedAttributeName)
        
        return response
    }
