def do(self): if not settings.USE_AWS: return cls = load_class(self.classname, self.module) try: inst = cls.objects.get(pk=self.pk) except: return for key, value in inst.__dict__.items(): attribute = getattr(inst, key) field = getattr(attribute, "field", None) if isinstance(field, S3SyncField): s3_name, s3_flag_name, prop_name = \ S3SyncModelBase.get_names(key) if not hasattr(inst, s3_name): continue S3SyncField.send_to_s3(inst, key, s3_name, s3_flag_name)
def receive_tasks(self, queue_name=default_queue): for task_info in self.operation.receive_tasks(queue_name): class_name, module_name, kwargs = task_info cls = load_class(class_name, module_name) task = cls(kwargs) yield task