Nishant Nawarkhede
Nishant Nawarkhede

Reputation: 8400

django filter one day old data from model

model as,

class some(models.Model):
    created_on = models.DateTimeField(_('created'), auto_now_add=True)
    ...
    ...

I want one day old records from some model. So I have tried,

some.objects.filter(created_on__gte=datetime.datetime.now()-datetime.timedelta(days=1))

It does not seems much impressive way to filter, any another approach ?

Upvotes: 1

Views: 2755

Answers (1)

jatinderjit
jatinderjit

Reputation: 1399

Well you have to calculate yesterday anyway.

yesterday = datetime.date.today() - datetime.timedelta(days=1)

If you are using Django 1.9, you can use:

some.objects.filter(created_on__date=yesterday)

Otherwise you are doing it right.

Upvotes: 1

Related Questions