def obj_create(self, bundle, **kwargs): self.is_valid(bundle) if bundle.errors: raise ImmediateHttpResponse(response=self.error_response( bundle.request, bundle.errors[self._meta.resource_name])) return ModelResource.obj_create(self, bundle, **kwargs)
def obj_create(self, bundle, **kwargs): try: return ModelResource.obj_create(self, bundle, **kwargs) except IntegrityError: # This has the negative side-effect of always making the server # respond with (201) regardless of whether or not the object was # just created. It would be better if it could return (200) if the # object already existed. allocation_id = simplejson.loads(bundle.request.body)['allocation_id'] fileset = models.Fileset.objects.get(allocation_id=allocation_id) bundle.obj = fileset return bundle
def obj_create(self, bundle, **kwargs): try: return ModelResource.obj_create(self, bundle, **kwargs) except IntegrityError: # This has the negative side-effect of always making the server # respond with (201) regardless of whether or not the object was # just created. It would be better if it could return (200) if the # object already existed. data = simplejson.loads(bundle.request.body) result = models.Result.objects.get( pk=resolve_primary_key_from_url(data['result'])) process = models.Process.objects.get( pk=resolve_primary_key_from_url(data['process'])) process_step = models.ProcessStep.objects.get(process=process, result=result, label=data['label']) bundle.obj = process_step return bundle
def obj_create(self, bundle, **kwargs): try: return ModelResource.obj_create(self, bundle, **kwargs) except IntegrityError: # This has the negative side-effect of always making the server # respond with (201) regardless of whether or not the object was # just created. It would be better if it could return (200) if the # object already existed. data = simplejson.loads(bundle.request.body) tool = models.Tool.objects.get( source_path=data['tool']['source_path'], version=data['tool']['version']) result = models.Result.objects.get(tool=tool, test_name=data['test_name'], lookup_hash=models.Result.calculate_lookup_hash( data['inputs'])) bundle.obj = result return bundle