Source

django-fitlog / fitlog / managers.py

Full commit
from django.db import models


class FitLogManager(models.Manager):
    def by_member(self, member):
        return self.select_related().filter(member=member).order_by(
            '-create_date')

    def latest(self):
        return self.select_related().all().order_by('-create_date')[:10]

    def number_of_logs(self):
        return self.count()


class CardioManager(models.Manager):
    def get_query_set(self):
        return super(CardioManager, self).get_query_set().filter(
            fitness_type__name__iexact="Cardio")


class WeightManager(models.Manager):
    def get_query_set(self):
        return super(WeightManager, self).get_query_set(
        ).select_related().filter(fitness_type__name__iexact="Weight Training")


class BodyWeightLogManager(models.Manager):
    def by_member(self, member):
        return self.select_related().filter(member=member).order_by(
            '-weight_date')