Django с системной установкой часового пояса по сравнению с отдельными часовыми поясами пользователя

C (или C ++) должен быть первым языком программирования

Первый язык НЕ должен быть легким, он должен быть тем, который настраивает ум студента и готовит его к серьезная информатика.
C идеально подходит для этого, он заставляет студентов думать о памяти и обо всех вещах низкого уровня, и в то же время они могут научиться структурировать свой код (у него есть функции!)

C ++ имеет дополнительное преимущество что это действительно отстой :), таким образом, студенты поймут, почему люди должны были придумать Java и C #

15
задан Community 23 May 2017 в 10:29
поделиться

3 ответа

Обновление, январь 2013 г. : Django 1.4 теперь поддерживает часовой пояс !!


Старый ответ по историческим причинам:

Я собираюсь сам работаю над этой проблемой для своего приложения. Мой первый подход к этой проблеме заключался бы в том, чтобы воспользоваться советом разработчика ядра django Малкома Трединника в этой публикации пользователя django . Вероятно, вы захотите сохранить настройку часового пояса пользователя в его профиле пользователя.

Я также настоятельно рекомендую вам изучить модуль pytz , который делает работу с часовыми поясами менее болезненной. Для внешнего интерфейса я создал «средство выбора часового пояса» на основе общих часовых поясов в pytz. У меня есть одно поле выбора для области, а другое - для местоположения (например, США / Центральный отображается с двумя полями выбора).

7
ответ дан 1 December 2019 в 04:01
поделиться

Вы можете начать с просмотра приложения django-timezones . Он делает доступным ряд полей модели на основе часовых поясов (и соответствующие им поля формы, а также некоторые декораторы), которые вы можете использовать как минимум для хранения различных значений часовых поясов для каждого пользователя (если ничего другого).

1
ответ дан 1 December 2019 в 04:01
поделиться

Здесь я не эксперт по Django, но afaik Django не имеет магии, и я даже не могу представить себе такую ​​магию, которая сработает.

Например: вы не всегда хотите сохранять время в формате UTC. Например, в приложении календаря вы хотите сохранить дату и время по местному времени, когда происходит событие календаря. Что может отличаться как от серверов, так и от часового пояса пользователей. Поэтому иметь код, который автоматически конвертирует каждое выбранное datetime в часовой пояс сервера, было бы очень плохо.

Так что да, вам придется справиться с этим самостоятельно. Я бы рекомендовал сохранять часовой пояс для всего и, конечно, запускать сервер в формате UTC, и позволить всем временам, сгенерированным приложением, использовать UTC, а затем преобразовывать их в часовой пояс пользователя при отображении. Это не сложно, просто раздражает вспоминать. Когда дело доходит до даты и времени, вводимой пользователем, это зависит от приложения, следует ли вам преобразовывать в UTC или нет. Я бы в качестве общей рекомендации не преобразовывал в UTC, а сохранял в часовом поясе пользователя, с информацией о том, какой это часовой пояс.

Да, часовые пояса - большая проблема. Я написал пару сообщений в блоге по этой досадной проблеме, например здесь: http://regebro.wordpress.com/2007/12/18/python-and-time-zones-fighting-the-beast/

В конце концов, вам придется самостоятельно решать проблемы с часовыми поясами, потому что на большинство вопросов нет правильного ответа.

с информацией о том, какой это часовой пояс.

Да, часовые пояса - большая проблема. Я написал пару сообщений в блоге по этой досадной проблеме, например здесь: http://regebro.wordpress.com/2007/12/18/python-and-time-zones-fighting-the-beast/

В конце концов, вам придется самостоятельно решать проблемы с часовыми поясами, потому что на большинство вопросов нет правильного ответа.

с информацией о том, какой это часовой пояс.

Да, часовые пояса - большая проблема. Я написал пару сообщений в блоге по этой досадной проблеме, например здесь: http://regebro.wordpress.com/2007/12/18/python-and-time-zones-fighting-the-beast/

В конце концов, вам придется самостоятельно решать проблемы с часовыми поясами, потому что на большинство вопросов нет правильного ответа.

2
ответ дан 1 December 2019 в 04:01
поделиться
Другие вопросы по тегам:

Похожие вопросы: