Студенты Практикума

Рад Вас видеть! Пишите, что понравилось. А если нашли ошибку, то тоже пишите))

Подписаться

Виталий Павлов

Для группы Студенты Практикума

Вдруг кто-то захочет сделать часовые пояса для пользователей и будет искать, напишу как я решил этот вопрос.
Мне не понравилась идея выбора часового пояса самим пользователем. Мы все-таки стараемся делать что-то похожее на то, чем мы пользуемся в реальной жизни. Поэтому я решил пойти по другому пути.
Можно скачать бесплатную базу данных, в которой содержаться данные ip адреса, и установить в виртуальное окружение их приложение. Отсюда уже можно по ip адресу из request найти нужный нам offset. К сожалению название timezone сразу не дается. Я решил эту проблему словарем с offset и переводом на время GMT. Далее форматируем время в шаблоне как указано в документации.
Но каждый раз делать запрос в базу данных будет заниматься много времени, тем более если запросов будет много. С этим я разобрался с помощью добавления cookies. Как их делать и читать очень хорошо написано здесь. То есть мы один раз только отправляем cookies(timezone и ip) и потом только проверяем не поменялся ли ip у клиента. В шаблоне к cookie можно обратиться с помощью request.COOKIES.cookie_name.

21 февраля 2023 05:17