Fix unsubscribe bug
This commit is contained in:
parent
fcfebcd952
commit
2800f2f158
|
|
@ -115,7 +115,6 @@ class Subscriber(ProjectBaseMixin):
|
|||
def unsubscribe(self, query: dict):
|
||||
"""Unsubscribe user."""
|
||||
self.subscribe_set.update(unsubscribe_date=now())
|
||||
self.subscription_types = []
|
||||
|
||||
@property
|
||||
def send_to(self):
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
"""Notification app serializers."""
|
||||
|
||||
from django.utils.translation import ugettext_lazy as _
|
||||
from rest_framework import serializers
|
||||
|
||||
|
|
@ -83,7 +84,7 @@ class SubscribeObjectSerializer(serializers.ModelSerializer):
|
|||
"""Meta class."""
|
||||
|
||||
model = models.Subscriber
|
||||
fields = ('subscriber', )
|
||||
fields = ('subscriber',)
|
||||
read_only_fields = ('subscribe_date', 'unsubscribe_date',)
|
||||
|
||||
|
||||
|
|
@ -91,7 +92,7 @@ class SubscribeSerializer(serializers.ModelSerializer):
|
|||
"""Subscribe serializer."""
|
||||
|
||||
email = serializers.EmailField(required=False, source='send_to')
|
||||
subscription_types = SubscriptionTypeSerializer(many=True, read_only=True)
|
||||
subscription_types = serializers.SerializerMethodField(source='get_subscription_types', read_only=True)
|
||||
|
||||
class Meta:
|
||||
"""Meta class."""
|
||||
|
|
@ -102,3 +103,10 @@ class SubscribeSerializer(serializers.ModelSerializer):
|
|||
'subscription_types',
|
||||
'link_to_unsubscribe',
|
||||
)
|
||||
|
||||
def get_subscription_types(self, obj):
|
||||
serializer = SubscriptionTypeSerializer(
|
||||
obj.subscribe_set.filter(unsubscribe_date=None).values_list('subscription_type', flat=True),
|
||||
many=True
|
||||
)
|
||||
return serializer.data
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user