Это очень неэффективно: он получает всех связанных пользователей и выполняет итерации.
ManyToManyField возвращает набор запросов.Таким образом, вы можете использовать обычные методы фильтрации наборов запросов, чтобы сделать все это в одной команде:
return self.app.users.filter(user=user_obj).exists()
Обратите внимание, что при этом используется метод exists()
для возврата значения bool непосредственно из базы данных, а не для оценки фактическогообъекты.