Есть примерно такая модель:
class Ip(models.Model):
ip = models.GenericIPAddressField(protocol="IPv4", verbose_name="IP")
is_active = models.BooleanField(default=True)
class User(models.Model):
name = models.CharField(_('Name of User'), max_length=255)
ips = models.ManyToManyField(Ip, blank=True, related_name="user_ip")
def get_ip_count(self):
return "{}/{}".format(self.ips.filter(is_active=True).count(),
self.ips.filter(is_active=False).count())
Как можно оптимизировать get_ip_count что-бы он не порождал кучу подзапросов? Наверное как-то через select_related но не могу додуматься как.