def update(self, instance, validated_data): instance = super(ScanSerializerUpdate, self).update(instance, validated_data) from localground.apps.tasks import process_map result = process_map.delay(self.instance) return instance
def create(self, validated_data): # Overriding the create method to handle file processing owner = self.context.get('request').user f = self.initial_data.get('media_file') # ensure filetype is valid: upload_helpers.validate_file(f, self.ext_whitelist) # save it to disk extras = self.process_file(f, owner) extras.update(self.get_presave_create_dictionary()) extras.update({ 'status': models.StatusCode.objects.get(id=models.StatusCode.READY_FOR_PROCESSING), #Make writeable field in serializer? 'upload_source': models.UploadSource.objects.get(id=models.UploadSource.WEB_FORM), 'attribution': validated_data.get('attribution') or owner.username, 'host': settings.SERVER_HOST }) validated_data = {} validated_data.update(self.validated_data) validated_data.update(extras) self.instance = self.Meta.model.objects.create(**validated_data) from localground.apps.tasks import process_map result = process_map.delay(self.instance) return self.instance
def update(self, instance, validated_data): instance = super(MapImageSerializerUpdate, self).update(instance, validated_data) from localground.apps.tasks import process_map result = process_map.delay(self.instance) return instance