Django: преобразование часовых поясов внутри шаблонов

Я пытаюсь преобразовать даты UTC во временные зоны моих пользователей. Все даты хранятся в базе данных в формате UTC, и часовой пояс каждого пользователя также сохраняется (фиксируется, когда он зарегистрировался).

Проблема в том, что когда я использую timezone.activate(user_timezone), чтобы попытаться преобразовать даты в часовой пояс пользователя в моих шаблонах, используя тег шаблона {% timezone on %}, он продолжает возвращать одну и ту же дату UTC. Я перепробовал все возможные настройки, но проблема сохраняется.

views.py

from dateutil.relativedelta import relativedelta

import 
def home(request):
  if request.method == 'GET':
    #users stored timezone e.g 'america/chicago'
    users_tz = reqeuest.user.timezone
    #activate users timezone
    timezone.activate(request.user.timezone)
    return render(request, 'home.html')

home.html

{% load tz %}
...

{% localtime on %}
    <div style="float: right;"><b>Registered: </b> {{ user.registered_date }}</div>
{% endlocaltime %}

settings.py

...
USE_I18N = True

USE_L10N = True

TIME_ZONE = 'UTC'

Вернуться на верх