Advertisement
Guest User

Untitled

a guest
Feb 25th, 2017
75
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.08 KB | None | 0 0
  1.     def create(self, request):
  2.         request.data['owner'] = request.user.id
  3.         request.data['created'] = datetime.now()
  4.  
  5.         serializer = self.get_serializer(data=request.data)
  6.  
  7.         if serializer.is_valid():
  8.             d = serializer.validated_data
  9.  
  10.             existing = Objective.objects.filter(owner__id=self.request.user.id,
  11.                                                 year=d['year'],
  12.                                                 quarter=d['quarter'])
  13.  
  14.             num_existing = existing.count()
  15.  
  16.             # make sure the user doesn't already have 5 objectives
  17.             if (num_existing >= 5):
  18.                 return Response(
  19.                     'User already has 5 objectives this quarter',
  20.                     status.HTTP_400_BAD_REQUEST
  21.                 )
  22.  
  23.             # set the Objective number as the next in line
  24.             d['number'] = num_existing + 1
  25.            
  26.             e = serializer.save()
  27.             return Response(serializers.ObjectiveSerializer(e).data)
  28.         else:
  29.             return Response(serializer.errors)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement