Ссылаясь на связанный вопрос, вы можете использовать объекты Q с .exclude()
вместо .filter()
. Вы также можете отрицать объекты Q, добавив к тильде префикс (~):
Продукты с ингредиентами, не содержащими клубнику и молоко
.filter(
~Q(product__ingredients__ingredient__name='strawberry') &
~Q(product__ingredients__ingredient__name='milk')
)
Продукты с ингредиентами, не содержащими клубнику ИЛИ молоко
.filter(~Q(product__ingredients__ingredient__name__in=['strawberry', 'milk']))