Skip to main content

A Django app providing database and form fields for split datetime/time and pytz timezone objects.

Project description

Here is how it looks like.

Written on top of django-timezone-field.

A Django app providing database and form fields for split datetime/time and pytz timezone objects.

  • Use SplitDateTimeTimeZoneField in place of forms.DateTimeField.
  • Use SplitTimeTimeZoneField in place of forms.TimeField.

The setting USE_TZ_FIELDS = True will convert all admin.ModelAdmin to use SplitDateTimeTimeZoneField for models.DateTimeField and SplitTimeTimeZoneField for models.TimeField.

Requires USE_TZ = True in


If using a database that does not support timezone-aware times then the initial values of model forms will always be in the UTC timezone.

Form Field

import pytz

from django import http
from django import forms
from django.utils import timezone
from django.forms.util import to_current_timezone
from django.conf import settings

from datetimezone_field import SplitDateTimeTimeZoneField, \

def index(request):

    class MyForm(forms.Form):
        a_datetime = SplitDateTimeTimeZoneField()
        a_time = SplitTimeTimeZoneField()

    tz = pytz.timezone("Australia/Sydney")
    now = to_current_timezone(

    my_form = MyForm(initial={
        'a_datetime': now,
        'a_time': now.time().replace(tzinfo=now.tzinfo)

    return http.HttpResponse(my_form.as_p())


  1. From pypi using pip:

    pip install django-datetimezone-field
  2. Add timezone_field and datetimezone_field to your settings.INSTALLED_APPS


Running sample project

  1. cd test/sample_project
  2. virtualenv sample-env
  3. source sample-env/bin/activate
  4. pip install -r requirements.txt
  5. python syncdb
  6. python runserver


  1. Unit tests

Found a Bug?

To file a bug or submit a patch, please head over to django-datetimezone-field on github.


Built on top of Mike Fogel’s django-timezone-field.

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Filename, size & hash SHA256 hash help File type Python version Upload date
django-datetimezone-field-0.1.8.tar.gz (4.8 kB) Copy SHA256 hash SHA256 Source None

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page