Fixed #2315 -- added work around for Windows timezone setting (i.e. we can't do

it). This will work until somebody wants to write some full Win32 timezone changing code for us. Thanks to Marc Fargas and SmileyChris for the combined patch.


git-svn-id: http://code.djangoproject.com/svn/django/trunk@4487 bcc190cf-cafb-0310-a4f2-bffc1f526a37
This commit is contained in:
Malcolm Tredinnick 2007-02-12 00:10:09 +00:00
parent 6c4757729b
commit 80e58b3211
4 changed files with 13 additions and 2 deletions

View File

@ -79,6 +79,7 @@ answer newbie questions, and generally made Django that much better:
Andy Dustman <farcepest@gmail.com> Andy Dustman <farcepest@gmail.com>
Clint Ecker Clint Ecker
Enrico <rico.bl@gmail.com> Enrico <rico.bl@gmail.com>
Marc Fargas <telenieko@telenieko.com>
favo@exoweb.net favo@exoweb.net
Eric Floehr <eric@intellovations.com> Eric Floehr <eric@intellovations.com>
gandalf@owca.info gandalf@owca.info

View File

@ -7,6 +7,7 @@ a list of all possible variables.
""" """
import os import os
import time # Needed for Windows
from django.conf import global_settings from django.conf import global_settings
ENVIRONMENT_VARIABLE = "DJANGO_SETTINGS_MODULE" ENVIRONMENT_VARIABLE = "DJANGO_SETTINGS_MODULE"
@ -105,8 +106,10 @@ class Settings(object):
new_installed_apps.append(app) new_installed_apps.append(app)
self.INSTALLED_APPS = new_installed_apps self.INSTALLED_APPS = new_installed_apps
# move the time zone info into os.environ if hasattr(time, 'tzset'):
os.environ['TZ'] = self.TIME_ZONE # Move the time zone info into os.environ. See ticket #2315 for why
# we don't do this unconditionally (breaks Windows).
os.environ['TZ'] = self.TIME_ZONE
def get_all_members(self): def get_all_members(self):
return dir(self) return dir(self)

View File

@ -18,6 +18,8 @@ DATABASE_PORT = '' # Set to empty string for default. Not used with
# Local time zone for this installation. All choices can be found here: # Local time zone for this installation. All choices can be found here:
# http://www.postgresql.org/docs/8.1/static/datetime-keywords.html#DATETIME-TIMEZONE-SET-TABLE # http://www.postgresql.org/docs/8.1/static/datetime-keywords.html#DATETIME-TIMEZONE-SET-TABLE
# If running in a Windows environment this must be set to the same as your
# system time zone.
TIME_ZONE = 'America/Chicago' TIME_ZONE = 'America/Chicago'
# Language code for this installation. All choices can be found here: # Language code for this installation. All choices can be found here:

View File

@ -827,6 +827,11 @@ manual configuration option (see below), Django will *not* touch the ``TZ``
environment variable, and it'll be up to you to ensure your processes are environment variable, and it'll be up to you to ensure your processes are
running in the correct environment. running in the correct environment.
.. note::
Django cannot reliably use alternate time zones in a Windows environment.
When running Django on Windows this variable must be set to match the
system timezone.
URL_VALIDATOR_USER_AGENT URL_VALIDATOR_USER_AGENT
------------------------ ------------------------