From: Scott Baker Date: Thu, 9 Oct 2014 18:09:15 +0000 (-0700) Subject: merge my REST API changes with Sapan's X-Git-Url: http://git.onelab.eu/?p=plstackapi.git;a=commitdiff_plain;h=6ee1f07681283cddf926ac542555a32e53b103f7 merge my REST API changes with Sapan's --- diff --git a/planetstack/apigen/api.template.py b/planetstack/apigen/api.template.py index a98acb8..e3f1b64 100644 --- a/planetstack/apigen/api.template.py +++ b/planetstack/apigen/api.template.py @@ -111,7 +111,7 @@ class PlanetStackRetrieveUpdateDestroyAPIView(generics.RetrieveUpdateDestroyAPIV def destroy(self, request, *args, **kwargs): obj = self.get_object() if obj.can_update(request.user): - return super({{ object.camel }}Detail, self).destroy(request, *args, **kwargs) + return super(generics.RetrieveUpdateDestroyAPIView, self).destroy(request, *args, **kwargs) else: return Response(status=status.HTTP_400_BAD_REQUEST) @@ -137,16 +137,19 @@ class {{ object.camel }}List(generics.ListCreateAPIView): return {{ object.camel }}.select_by_user(self.request.user) def create(self, request, *args, **kwargs): - #obj = {{ object.camel }}().update(request.DATA) - #obj = self.get_object() - #obj.caller = request.user + obj = {{ object.camel }}(**request.DATA) + obj.caller = request.user + if obj.can_update(request.user): + return super({{ object.camel }}List, self).create(request, *args, **kwargs) + else: + raise Exception("failed obj.can_update") + ret = super({{ object.camel }}List, self).create(request, *args, **kwargs) if (ret.status_code%100 != 200): raise Exception(ret.data) - #if obj.can_update(request.user): - # return super({{ object.camel }}List, self).create(request, *args, **kwargs) - #else: - # return Response(status=status.HTTP_400_BAD_REQUEST) + + return ret + class {{ object.camel }}Detail(PlanetStackRetrieveUpdateDestroyAPIView): queryset = {{ object.camel }}.objects.select_related().all()