from django.db import models from django.utils.translation import ugettext_lazy as _ from .exercises import Exercises class FrequentCustomers(models.Model): customer_id = models.BigAutoField(primary_key=True) name = models.CharField(max_length=100, help_text='Last name', verbose_name=_("name")) firstname = models.CharField(max_length=100, help_text='First name', verbose_name=_("firstname")) email = models.CharField(max_length=100) date_add = models.DateField() #exercises = models.ManyToManyField(Exercises) #def exercises(self): # exercises = Exercises.objects.filter(customer__customer_id=self.customer_id) # return exercises @property def exercise_count(self): count = Exercises.objects.filter(customer__customer_id=self.customer_id).count() return count class Meta: db_table = 'customer' verbose_name = _("Frequent Customer") verbose_name_plural = _("Frequent Customers") #ordering = ['exercise_count'] #filter(exercise_count__gt=10) def __str__(self): return self.name