A Django app providing database and form fields for pytz timezone objects.
Project description
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
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Close
Hashes for django-timezone-field-0.4.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 26e676bb611662af24a17bb00a25d1bc13bfd2e7640aa7688241ff2643809d82 |
|
MD5 | 8fdff4972a8a3e061104c16f52388da7 |
|
BLAKE2b-256 | 703a61498a201b45ee1df683d47e0dc2b5b43cb0709643eadebf3adc49b7462a |