def save(self): if not self.group: raise ValueError() # Save to memory cache cache[self.group][self.key] = self # Save to disk if not os.path.exists(self.group_path()): os.makedirs(self.group_path()) FileIO.write(self.item_path(self.key), jsonpickle.encode(self))