[Django]-Getting the current date (and time) in Django

3πŸ‘

βœ…

In templates, there is already a built-in function now:

Displays the current date and/or time, using a format according to the
given string. Such string can contain format specifiers characters as
described in the date filter section.

Example:

It is {% now "jS F Y H:i" %}

In django 1.8, you can use it with as:

{% now "Y" as current_year %}
{% blocktrans %}Copyright {{ current_year }}{% endblocktrans %}

In python code, there is no django builtin for date, just use the python datetime.date.now() to make your own customized function.

πŸ‘€Assem

3πŸ‘

I think the fastest and cleanest way is to use the localdate function:

from django.utils.timezone import localdate
today = localdate()

Or, there is also localtime, which is the current datetime in the project’s timezone:

from django.utils.timezone import localtime
today = localtime().date()

However, remember that now().date() may be different from current date, since it uses UTC:

Note that now() will always return times in UTC regardless of the value of TIME_ZONE; you can use localtime() to get the time in the current time zone.

πŸ‘€arcstur

2πŸ‘

Yes you can get the the current date in Python views.py file in any format you want.

In views.py

import datetime

def your(request)
    now=datetime.datetime.now()
    print("Date: "+ now.strftime("%Y-%m-%d")) #this will print **2018-02-01** that is todays date
πŸ‘€Adnan Sheikh

Leave a comment