Get Date from a Django Datetimefield

Get Date from a Django Datetimefield

I would like to request some assistance regarding this matter

I am learning django and trying out some codes but I hit a brick wall at trying to get the date only from a model's DateTimeField

here's the code that I am working on:

class APPLICANT_DATA(models.Model):
    SCHEDULED_AT = models.DateTimeField(null=True, blank=True)


def somefunction():
    app_data = APPLICANT_DATA.objects.all()
    for item in app_data:
        the_date = str(item.SCHEDULED_AT.strftime("%B-%d-%Y")) + ", " + the _date

And I am getting ('NoneType' object has no attribute 'strftime') even though my model contains 3 records that all have date and time

What am I doing wrong? any advice for a newbie? many thanks.

1

3 Answers

DateTimeField becomes a datetime.datetime object in Python

If you need a date object to manipulate later on, you could pull the datetime.date object directly from your DateTimeField(), using datetime.datetime.date() like below:

class ApplicantData(models.Model):
    scheduled_at = models.DateTimeField(null=True, blank=True)

date = application_data.scheduled_at.date()

This works because Django will translate the DateTimeField into the Python type datetime.datetime, upon which we have called date().

David Miller
Author

David Miller

David Miller brings 15 years of experience in global economics, personal finance strategy, and market dynamics. He specializes in turning complex economic trends into actionable insights for everyday readers.