[Answered ]-Django ManytoManyField query does not exist

1👍

You are querying for a non-existing object. To avoid that error use get_or_create:

def accept(self):
    receiver_friend_list, created = FriendList.objects.get_or_create(user=self.receiver)
    if receiver_friend_list:
        receiver_friend_list.add_friend(self.sender)
        sender_friend_list = FriendList.objects.get(user=self.sender)
        if sender_friend_list:
            sender_friend_list.add_friend(self.receiver)
            self.is_active = False
            self.save()

This is what Django Docs shows and there is a pythonic way also taken from Django Docs.

try:
    receiver_friend_list= FriendList.objects.get(user=self.receiver)
except FriendList.DoesNotExist:
    receiver_friend_list = FriendList(user=self.receiver)
    receiver_friend_list.save()

Leave a comment