I have a model like this
class Maca(models.Model): created_at = models.DateTimeField( auto_now_add=True )
Now I want in the views.py file to get all the entries that have created today,
I'm trying this
But this looks for the clock that object is created too.
P.S I can't change the field in model because I need the clock too in other purposes.
Can someone help me to select all entries that have been created today?
Thanks in advance
there many ways to get today data from database.
year = datetime.datetime.now().strftime('%y') month = datetime.datetime.now().strftime('%m') day = datetime.datetime.now().strftime('%d') filtereddata = Maca.objects.filter(created_at__year=year,created_at__month=month, created_at__day=day )
the second way is to filter with contains
filtereddata = Maca.objects.filter(created_at__contains=datetime.today().date())
if datetime.datetime not work. just remove one datetime only use single datetime
I think the main reason is because you trying to compare
dt field with
You can use prefixes for a field.
Or you can compare your 'today' value as
dt(just an example):
today = datetime.today().replace(hour=0, minute=0, second=0, microsecond=0) records = Maca.objects.filter(created_at >= today)
You have to just write a valid filter like this :
from datetime import datetime today = datetime.today() year = today.year month = today.month day = today.day meca = Meca.objects.filter(created_at__year=year, created_at__month=month, created_at__day=day)