2015-08-03 5 views

ответ

2

Вы можете использовать datetime.date.today(), чтобы получить текущую дату, а затем фильтровать объекты, основываясь на текущей дате.

Вы можете сделать что-то вроде:

import datetime 

today = datetime.date.today() # date representing today's date 
qs = MyModel.objects.filter(time__gt=today) # filter objects created today 

Здесь qs представляет объекты, которые были созданы сегодня.

Другое решение предназначено для использования range, которое используется для выполнения поиска между двумя датами.

Здесь start_date представляет 00:00:00 и end_date представляет 23:59:59.

import datetime 

today = datetime.datetime.today() 
start_date = datetime.datetime(year=today.year, month=today.month, day=today.day, hour=0, minute=0, second=0) # represents 00:00:00 
end_date = datetime.datetime(year=today.year, month=today.month, day=today.day, hour=23, minute=59, second=59) # represents 23:59:59 
qs = MyModel.objects.filter(time__range=(start_date, end_date)) # today's objects 

Поскольку вы используете Django Framework Rest, возможно, потребуется переопределить метод get_queryset() в вашей точке зрения и вернуть QuerySet, содержащие объекты, которые были созданы сегодня.

class MyView(..): 

    def get_queryset(self): 
     .. 
     return qs # return the queryset created using the above logic