Фильтровать набор запросов только в тех случаях, когда пользователь добавлен в поле ManyToManyFIeld

Я хочу вернуть все лиды, которые содержат текущего пользователя. Как это сделать?

Models.py

class CustomUser(AbstractUser):

    def __str__(self):
        return self.email


class Lead(models.Model):
    budget = models.IntegerField()
    buyer = models.ManyToManyField(CustomUser)

Какой набор запросов ожидается

Lead.objects.filter(buyer__have=request.user)

Вы можете фильтровать с помощью:

Lead.objects.filter(buyer=request.user)

это сделает INNER JOIN, и вернет только Lead объекты, где request.user является ( одним из ) buyers.

Back to Top