29 lines
767 B
Python
29 lines
767 B
Python
from django.db.models import Manager
|
|
from django.db.models.query import QuerySet
|
|
|
|
|
|
class NoteQuerySet(QuerySet):
|
|
|
|
def _ordered_by_field(self, field, reverse=False):
|
|
return self.order_by('%s%s' % ("-" if reverse else "", field))
|
|
|
|
def by_date(self, reverse=False):
|
|
return self._ordered_by_field('created_date', reverse=reverse)
|
|
|
|
def by_time(self, reverse=False):
|
|
return self._ordered_by_field('created_time', reverse=reverse)
|
|
|
|
|
|
class NoteManager(Manager):
|
|
|
|
def get_queryset(self):
|
|
return NoteQuerySet(self.model)
|
|
|
|
get_query_set = get_queryset
|
|
|
|
def by_date(self, **kwargs):
|
|
return self.get_queryset().by_date(**kwargs)
|
|
|
|
def by_time(self, **kwargs):
|
|
return self.get_queryset().by_time(**kwargs)
|