Модуль запроса друзей для моего приложения не работает

Я внедряю модуль друзей в свое приложение, и у меня возникают ошибки с частью запроса друга. Я хочу, чтобы, когда кто-то вводит имя пользователя в форму и нажимает кнопку отправить, она отправляла имя пользователя на ту же страницу. Затем мое приложение выполняет быстрый поиск в таблице пользователей и, если находит имя пользователя, добавляет человека, отправившего запрос, в поле manytomany запрашивающего.

.

Но когда я попробовал, он действительно успешно добавил запрос, но по какой-то причине он также добавил запрос на дружбу к запросившему m2m с указанием, что он от запрашивающего.

Мое мнение по поводу запроса друга:

def friends(request):
    friendreqs = request.user.friendreq.all()
    friends = request.user.friends.all()
    if request.method == "POST":
        try:
            requestee = User.objects.get(username=request.POST["username"])
            requester = request.user
            requestee.friendreq.add(requester)
            return render(request, "alumnas/friends.html", {
                'requests': friendreqs,
                'friends': friends
            })
        except ObjectDoesNotExist:
            return render(request, "alumnas/friends.html", {
                'message': "User not found :(",
                'requests': friendreqs,
                'friends': friends
            })
    else:
        return render(request, "alumnas/friends.html", {
            'requests': friendreqs,
            'friends': friends
        })

Список html:

{% extends "alumnas/layout.html" %}

{% block body %}
<div class="contain">
  <h1>Friends</h1>
    <div class="findfr">
      <p>Know anyone already? Find out if they're here and connect!</p>
        <form action="{% url 'friends' %}" method="POST">
          {% csrf_token %}
            <input type="text" class="form-control" placeholder="First name of person..." name="username" ><input type="submit" value="Send!" class="btn btn-primary">
        </form>
    </div>
    <hr>
    <div class="friends">
      <h3>Friends</h3>
    </div>
    <hr>
    <div class="requests">
      <h3>Friend Requests</h1>
      <ul>
        {% for req in requests %}
        <li>
          <div class="friendname p-2 border border-primary">
            <div class="name pt-2 pl-1">
              {{ req.username }}
            </div>
              <div class="acc">
                <a href="{% url 'accept' req.id %}" class="">Accept</button> 
              </div>
              <div class="ig ml-1">
                <a href="{% url 'ignore' req.id %}" class="">Ignore</button>
              </div>
            </div>
          </div>
        </li>
        {% endfor %}
      </ul>
    </div>
    {% if message %}
    <div class="notif1 d-flex" id="notif">
      <div class="message">
        <p>{{ message }}</p>
      </div>
      <div>
        <button id="closenote"><i class="fas fa-times"></i></button>
      </div>
    </div>
    {% endif %}
</div>
{% endblock %}

и models.py

from django.db import models
from django.contrib.auth.models import AbstractUser

# Create your models here.
class User(AbstractUser):
    propic = models.TextField(blank=True)
    fullname = models.TextField(blank=True)
    friendreq = models.ManyToManyField("self", related_name='requests', blank=True)
    friends = models.ManyToManyField("self", related_name="friends", blank=True)
    chatrooms = models.ManyToManyField("Chatroom", related_name="users", blank=True)
    area = models.TextField(blank=True, max_length=255)
    school = models.TextField(blank=True, max_length=255)

class Chatroom(models.Model):
    chatcode = models.TextField()

Как сделать так, чтобы запрос добавлялся только для получателя, а не для отправителя? Заранее спасибо!

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