コード例 #1
0
ファイル: views.py プロジェクト: byteShaft/bidding-service
    def put(self, request, *args, **kwargs):
        queryset = self.get_queryset_safe()
        if queryset:
            username = str(self.request.user)
            user_id = helpers.get_user_id_by_name(username)
            ad_id = kwargs.get("ad_id")
            request.data.update({"ad": ad_id})
            request.data.update({"bidder": user_id})
            serializer = self.get_serializer(instance=queryset, data=request.data)
            if serializer.is_valid():
                serializer.save()
                return Response(serializer.data, status=status.HTTP_200_OK)
            return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST)

        return Response({"result": "Comment does not exist"}, status=status.HTTP_204_NO_CONTENT)
コード例 #2
0
ファイル: views.py プロジェクト: byteShaft/bidding-service
    def post(self, request, *args, **kwargs):
        username = str(self.request.user)
        user_id = helpers.get_user_id_by_name(username)
        ad_id = kwargs.get("pk")
        request.data.update({"ad": ad_id})
        request.data.update({"bidder": user_id})
        # Allow a user to bid only once per ad
        if helpers.did_user_already_bid(ad_id, user_id):
            return Response({"result": "Only one bid per user per ad allowed"}, status=status.HTTP_409_CONFLICT)

        serializer = AdBidSerializer(data=request.data)
        if serializer.is_valid():
            serializer.save()
            return Response(serializer.data, status=status.HTTP_201_CREATED)
        return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST)
コード例 #3
0
    def post(self, request, *args, **kwargs):
        username = str(self.request.user)
        user_id = helpers.get_user_id_by_name(username)
        ad_id = kwargs.get('pk')
        request.data.update({'ad': ad_id})
        request.data.update({'bidder': user_id})
        # Allow a user to bid only once per ad
        if helpers.did_user_already_bid(ad_id, user_id):
            return Response({'result': 'Only one bid per user per ad allowed'},
                            status=status.HTTP_409_CONFLICT)

        serializer = AdBidSerializer(data=request.data)
        if serializer.is_valid():
            serializer.save()
            return Response(serializer.data, status=status.HTTP_201_CREATED)
        return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST)
コード例 #4
0
    def put(self, request, *args, **kwargs):
        queryset = self.get_queryset_safe()
        if queryset:
            username = str(self.request.user)
            user_id = helpers.get_user_id_by_name(username)
            ad_id = kwargs.get('ad_id')
            request.data.update({'ad': ad_id})
            request.data.update({'bidder': user_id})
            serializer = self.get_serializer(instance=queryset,
                                             data=request.data)
            if serializer.is_valid():
                serializer.save()
                return Response(serializer.data, status=status.HTTP_200_OK)
            return Response(serializer.errors,
                            status=status.HTTP_400_BAD_REQUEST)

        return Response({'result': 'Comment does not exist'},
                        status=status.HTTP_204_NO_CONTENT)