Мне бы хотелось узнать ваше мнение о методах, которые я использую для работы с часовым поясом, как показано ниже. Правильно? Стоит ли беспокоиться о каких-либо дополнительных деталях?
Каждый клиент / пользователь системы находится в регионе с разным временем, поэтому я вставил в модель запись, которая идентифицирует регион:
Вмодель:
TIMEZONES = tuple(zip(pytz.all_timezones, pytz.all_timezones))
timezone = models.CharField (
null = False,
blank = False,
max_length = 32,
choices = TIMEZONES,
default = 'UTC',
verbose_name = "timezone",
help_text = "Timezone"
)
Когда пользователь входит в систему, переменная TIME_ZONE settings.py изменяется в соответствии с часовым поясом вошедшего в систему пользователя:
При входе в систему:
from django.conf import settings
settings.TIME_ZONE = timezone
Когда я делаю запрос курсора, я использую часовой пояс, как в settings.py:
В запросе:
from django.conf import settings
timezone = settings.TIME_ZONE
query = "" "
SET TIMEZONE = '{}';
...
"" ".format (timezone)
В шаблонах я включаю часовой пояс:
В шаблонах:
...
{% load tz%}
...
{% localtime on%}
...
{% endlocaltime%}
Надеюсь, я был понятен в презентации выше. Если вам нужна дополнительная информация, я могу предоставить.
Спасибо, что поделились своим опытом.