Skip to main content

A Django app providing database and form fields for pytz timezone objects.

Project description

https://api.travis-ci.org/mfogel/django-timezone-field.png?branch=develop https://coveralls.io/repos/mfogel/django-timezone-field/badge.png?branch=develop https://pypip.in/v/django-timezone-field/badge.png https://pypip.in/d/django-timezone-field/badge.png

A Django app providing database and form fields for pytz timezone objects.

Examples

Database Field

import pytz
from django.db import models
from timezone_field import TimeZoneField

class MyModel(models.Model):
    timezone1 = TimeZoneField()
    timezone2 = TimeZoneField()
    timezone3 = TimeZoneField()

my_inst = MyModel(
    timezone1='America/Los_Angeles',    # assignment of a string
    timezone2=pytz.timezone('Turkey'),  # assignment of a pytz.DstTzInfo
    timezone3=pytz.UTC,                 # assignment of pytz.UTC singleton
)
my_inst.full_clean()  # validates against pytz.all_timezones
my_inst.save()        # values stored in DB as strings

tz = my_inst.timezone1  # values retrieved as pytz objects
repr(tz)                # "<DstTzInfo 'America/Los_Angeles' PST-1 day, 16:00:00 STD>"

Form Field

from django import forms
from timezone_field import TimeZoneFormField

class MyForm(forms.Form):
    timezone = TimeZoneFormField()

my_form = MyForm({
    'timezone': 'America/Los_Angeles',
})
my_form.full_clean()  # validates against pytz.all_timezones

tz = my_form.cleaned_data['timezone']  # values retrieved as pytz objects
repr(tz)                               # "<DstTzInfo 'America/Los_Angeles' PST-1 day, 16:00:00 STD>"

Installation

Now on pypi!

pip install django-timezone-field

Running the Tests

Using Doug Hellman’s virtualenvwrapper:

mktmpenv
pip install django-timezone-field
export DJANGO_SETTINGS_MODULE=timezone_field.test_settings
django-admin.py test timezone_field

Found a Bug?

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

Credits

Originally adapted from Brian Rosner’s django-timezones.

Project details


Download files

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

Source Distribution

django-timezone-field-1.0.tar.gz (6.9 kB view details)

Uploaded Source

File details

Details for the file django-timezone-field-1.0.tar.gz.

File metadata

File hashes

Hashes for django-timezone-field-1.0.tar.gz
Algorithm Hash digest
SHA256 eee20210615b3a13dbe367d1edda048e72bcd948845c98a961f07dea36171501
MD5 a1d0614d700f7c15061220b1193f59e7
BLAKE2b-256 b0dec2771c45468a35b9c22cd93d43f6fb0614cae962e31c531e87d283a4c9f4

See more details on using hashes here.

Provenance

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page