Fix unsubscribe

This commit is contained in:
dormantman 2019-12-27 18:14:13 +03:00 committed by Kuroshini
parent a76efac4a8
commit d9f1da1e49
2 changed files with 6 additions and 7 deletions

View File

@ -116,14 +116,13 @@ class Subscriber(ProjectBaseMixin):
self.update_code = generate_string_code()
return super(Subscriber, self).save(*args, **kwargs)
def unsubscribe(self):
def unsubscribe(self, query: dict):
"""Unsubscribe user."""
subscribes = self.subscribe_objects
self.subscription_types = []
subscription_types = query.get('subscription_types')
subscribes.unsubscribe_date = now()
subscribes.save()
subscribes = self.subscription_types.objects.filter(pk__in=[subscription_types])
self.subscription_types = subscribes
self.save()

View File

@ -68,7 +68,7 @@ class UnsubscribeView(generics.GenericAPIView):
def patch(self, request, *args, **kw):
obj = self.get_object()
obj.unsubscribe()
obj.unsubscribe(request.query_params)
serializer = self.get_serializer(instance=obj)
return Response(data=serializer.data)
@ -83,7 +83,7 @@ class UnsubscribeAuthUserView(generics.GenericAPIView):
def patch(self, request, *args, **kw):
user = request.user
obj = get_object_or_404(models.Subscriber, user=user)
obj.unsubscribe()
obj.unsubscribe(request.query_params)
serializer = self.get_serializer(instance=obj)
return Response(data=serializer.data)