Как сделать Rest API представления и URL конечной точки из следующего кода Django Modol

Это мой веб-код Django для функциональности запроса друга. Мы переходим к созданию RestAPI тех же функций в DjangoREST Framework. Запутался, как сделать сериализацию, урлы и API Views в DjangoREST API. Пожалуйста, помогите.

Code

from django.db import models

from userAuth.models import UserAuth


class FriendList(models.Model):
    user = models.OneToOneField(UserAuth, 
    on_delete=models.CASCADE, related_name="user")
    friends = models.ManyToManyField(UserAuth, blank=True, related_name="friends")

    def add_friend(self, account):
        """
        Add a new friend.
        """
        if not account in self.friends.all():
            self.friends.add(account)
            self.save()

    def remove_friend(self, account):
        """
        Remove a friend.
        """
        if account in self.friends.all():
            self.friends.remove(account)

    def unfriend(self, removee):
        """
        Initiate the action of unfriending someone.
        """
        remover_friends_list = self  # person terminating the friendship

        # Remove friend from remover friend list
        remover_friends_list.remove_friend(removee)

        # Remove friend from removee friend list
        friends_list = FriendList.objects.get(user=removee)
        friends_list.remove_friend(remover_friends_list.user)

    def is_mutual_friend(self, friend):
        """
        Is this a friend?
        """
        if friend in self.friends.all():
            return True
        return False


class FriendRequest(models.Model):
    """
    A friend request consists of two main parts:
        1. SENDER
            - Person sending/initiating the friend request
        2. RECEIVER
            - Person receiving the friend request
    """

    sender = models.ForeignKey(UserAuth, on_delete=models.CASCADE, related_name="sender")
    receiver = models.ForeignKey(UserAuth, on_delete=models.CASCADE, related_name="receiver")
    is_active = models.BooleanField(blank=False, null=False, default=True)
    timestamp = models.DateTimeField(auto_now_add=True)

    def accept(self):
        """
        Accept a friend request.
        Update both SENDER and RECEIVER friend lists.
        """

        receiver_friend_list = FriendList.objects.get(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()

    def decline(self):
        """
        Decline a friend request.
        Is it "declined" by setting the `is_active` field to False
        """
        self.is_active = False
        self.save()

В приведенном выше коде UserAuth - это не что иное, как ссылка на пользовательскую таблицу User, определенную в другом классе. Это прекрасно работает в Django Web, но теперь нам нужно сделать api для вышеуказанной функциональности.

Вернуться на верх