try to fix subscriptions #2
This commit is contained in:
parent
e998865de5
commit
03946d0626
|
|
@ -17,12 +17,11 @@ class CreateSubscribeView(generics.CreateAPIView):
|
||||||
|
|
||||||
def create(self, request, *args, **kwargs):
|
def create(self, request, *args, **kwargs):
|
||||||
data = request.data
|
data = request.data
|
||||||
|
instance = None
|
||||||
if 'email' in request.data:
|
if 'email' in request.data:
|
||||||
# we shouldn't create new subscriber if we have one
|
# we shouldn't create new subscriber if we have one
|
||||||
subscriber = models.Subscriber.objects.filter(email=request.data['email']).first()
|
instance = models.Subscriber.objects.filter(email=request.data['email']).first()
|
||||||
if subscriber:
|
serializer = self.get_serializer(data=data) if instance is None else self.get_serializer(instance, data=data)
|
||||||
data = subscriber # new serializer will simply update instance instead of creating another one
|
|
||||||
serializer = self.get_serializer(data=data)
|
|
||||||
serializer.is_valid(raise_exception=True)
|
serializer.is_valid(raise_exception=True)
|
||||||
self.perform_create(serializer)
|
self.perform_create(serializer)
|
||||||
headers = self.get_success_headers(serializer.data)
|
headers = self.get_success_headers(serializer.data)
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user