Ensure user gets saved when uploading attachment via API

This commit is contained in:
Oliver Walters 2020-05-12 21:11:38 +10:00
parent 5d716d0cdd
commit 2369b40bbf
2 changed files with 10 additions and 11 deletions

View File

@ -296,24 +296,17 @@ class PartList(generics.ListCreateAPIView):
else: else:
return Response(data) return Response(data)
def create(self, request, *args, **kwargs): def perform_create(self, serializer):
""" Override the default 'create' behaviour: """
We wish to save the user who created this part! We wish to save the user who created this part!
Note: Implementation coped from DRF class CreateModelMixin Note: Implementation copied from DRF class CreateModelMixin
""" """
serializer = self.get_serializer(data=request.data)
serializer.is_valid(raise_exception=True)
# Record the user who created this Part object
part = serializer.save() part = serializer.save()
part.creation_user = request.user part.creation_user = self.request.user
part.save() part.save()
headers = self.get_success_headers(serializer.data)
return Response(serializer.data, status=status.HTTP_201_CREATED, headers=headers)
def get_queryset(self, *args, **kwargs): def get_queryset(self, *args, **kwargs):
queryset = super().get_queryset(*args, **kwargs) queryset = super().get_queryset(*args, **kwargs)

View File

@ -663,6 +663,12 @@ class StockAttachmentList(generics.ListCreateAPIView):
'stock_item', 'stock_item',
] ]
def perform_create(self, serializer):
attachment = serializer.save()
attachment.user = self.request.user
attachment.save()
class StockTrackingList(generics.ListCreateAPIView): class StockTrackingList(generics.ListCreateAPIView):
""" API endpoint for list view of StockItemTracking objects. """ API endpoint for list view of StockItemTracking objects.