def patch(self, request, todo_bucket_pk): resp = todo_bucket_interactors.get(pk=todo_bucket_pk) data = request.DATA todo_bucket_entity = resp.instance todo_bucket_entity.bulk_update(**data) obj = TodoBucketUpdateSerializer(data=todo_bucket_entity.to_dict()) if obj.is_valid(): # Update the entities after validation todo_bucket_entity.bulk_update(**obj.data) response = todo_bucket_interactors.update( todo_bucket_entity, update_fields=obj.data.keys()) return make_response(obj=response, serializer_cls=TodoBucketReadSerializer) return Response(status=status.HTTP_400_BAD_REQUEST, data=obj.errors)
def _get(self, pk): from interactors import todo_bucket_interactors try: return todo_bucket_interactors.get(pk=pk).instance except ObjectDoesNotExist: raise Http404
def get(self, request, todo_bucket_pk): entity = todo_bucket_interactors.get(pk=todo_bucket_pk) return make_response(obj=entity, serializer_cls=TodoBucketReadSerializer)