Django менеджер в полях поиска - PullRequest
0 голосов
/ 07 мая 2020

У меня есть SoftDeletableModel с именем Offer:

class Offer(SoftDeletableModel):
    user = models.ForeignKey(settings.AUTH_USER_MODEL, on_delete=models.PROTECT, related_name='offers')
    order = models.ForeignKey(Order, on_delete=models.PROTECT, related_name='offers')
    price = models.PositiveIntegerField()

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

Order.objects.filter(offers__user=request.user)

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

другой пример выглядит примерно так: Order.objects.filter(offers=48). предложение 48 удалено, но я тоже получаю результат от этого запроса.

использует ли django менеджер по умолчанию для полей поиска?

1 Ответ

1 голос
/ 07 мая 2020

Можете ли вы попробовать это:

Order.objects.filter(offers__user=request.user, is_deleted=False)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...