diff options
| author | Aymeric Augustin <aymeric.augustin@m4x.org> | 2013-11-22 15:31:31 +0100 |
|---|---|---|
| committer | Aymeric Augustin <aymeric.augustin@m4x.org> | 2013-11-22 15:32:22 +0100 |
| commit | 1eddca0a5202993dbb3f437ccb74095f6647b825 (patch) | |
| tree | 6fc58655c83fd9011a693602efcb58573e31ef7d | |
| parent | 9cbcd06b1adf5a505646f30898c3370d1c4ab726 (diff) | |
[1.6.x] Fixed #21487 -- Session cannot store tzinfo instances anymore.
Thanks filipp for the report.
| -rw-r--r-- | docs/topics/i18n/timezones.txt | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/docs/topics/i18n/timezones.txt b/docs/topics/i18n/timezones.txt index 4652e7e9c1..5e3a482154 100644 --- a/docs/topics/i18n/timezones.txt +++ b/docs/topics/i18n/timezones.txt @@ -184,24 +184,25 @@ error handling entirely for the sake of simplicity.) Add the following middleware to :setting:`MIDDLEWARE_CLASSES`:: + import pytz + from django.utils import timezone class TimezoneMiddleware(object): def process_request(self, request): - tz = request.session.get('django_timezone') - if tz: - timezone.activate(tz) + tzname = request.session.get('django_timezone') + if tzname: + timezone.activate(pytz.timezone(tzname)) else: timezone.deactivate() Create a view that can set the current timezone:: - import pytz from django.shortcuts import redirect, render def set_timezone(request): if request.method == 'POST': - request.session['django_timezone'] = pytz.timezone(request.POST['timezone']) + request.session['django_timezone'] = request.POST['timezone'] return redirect('/') else: return render(request, 'template.html', {'timezones': pytz.common_timezones}) |
