Size: a a a

Django [ru] #STAY HOME

2019 October 10

t

tØhiØ in Django [ru] #STAY HOME
Artem Gubatenko
есть объект модели с полем DateField. Нужно получить дату с учетом часового пояса
источник

AG

Artem Gubatenko in Django [ru] #STAY HOME
у меня поле в админке выводит эту дату с учетом языка:
источник

AG

Artem Gubatenko in Django [ru] #STAY HOME
def get_patient_birthday_date(self, obj):
       if obj.patient.birthday_date:
           birthday = formats.date_format(
               obj.patient.birthday_date,
               format='DATE_FORMAT'
           )
           return birthday
       return '-'
источник

AG

Artem Gubatenko in Django [ru] #STAY HOME
timezone.localdate(obj.patient.birthday_date) - на DateField не работает
источник

D

Dmitriy in Django [ru] #STAY HOME
вот так еще можно попробовать
dateformat.format(date, 'F Y')
источник

D

Dmitriy in Django [ru] #STAY HOME
источник

A

Alex in Django [ru] #STAY HOME
Ребят! Подскажите,
datetime.datetime.now() - выдает нормальное, правильное время.

timezone.now() - выдает не правильное, на 6 часов назад.

В Settings.py стоит
USE_TZ = True

И TIME_ZONE указан верный.

В чем может быть проблема?
источник

AG

Artem Gubatenko in Django [ru] #STAY HOME
проблема не в выводе. Выводится как нужно. Необходимо перед выводом преобразовать дату из UTC в локальный часовой пояс юзера
источник

AG

Artem Gubatenko in Django [ru] #STAY HOME
TIME_ZONE: верный - это у тебя UTC?
источник

A

Alex in Django [ru] #STAY HOME
Artem Gubatenko
проблема не в выводе. Выводится как нужно. Необходимо перед выводом преобразовать дату из UTC в локальный часовой пояс юзера
ДА, точно. Спасибо, заработало!
источник

A

Alex in Django [ru] #STAY HOME
Artem Gubatenko
TIME_ZONE: верный - это у тебя UTC?
Эмм, ну как обычно указываешь. Типа Europe/Moscow
источник

AG

Artem Gubatenko in Django [ru] #STAY HOME
хранить в БД лучеше в UTC, а выводить в "Europe/Moscow". Или проект подразумевает использование только московского времени?
источник

AG

Artem Gubatenko in Django [ru] #STAY HOME
Alex
ДА, точно. Спасибо, заработало!
рад что тебе помогло, но я писал ответ на сообщение от @Dmitriy ))
источник

A

Alex in Django [ru] #STAY HOME
Artem Gubatenko
рад что тебе помогло, но я писал ответ на сообщение от @Dmitriy ))
Ха-ха.
источник

A

Alex in Django [ru] #STAY HOME
Artem Gubatenko
хранить в БД лучеше в UTC, а выводить в "Europe/Moscow". Или проект подразумевает использование только московского времени?
Только Московского.
источник

A

Alex in Django [ru] #STAY HOME
И ещё один вопрос. Как сравнить, входит ли текущее время во временной промежуток допустим с 21:00 до 6:00. Только резать строку получившуюься типа 2019-10-10 15:52:53.004709+06:00, на время. И сравнивать? Или есть проще способы? Методы?
источник

AG

Artem Gubatenko in Django [ru] #STAY HOME
python сравнивает datetime and datetime
источник

A

Alex in Django [ru] #STAY HOME
Artem Gubatenko
python сравнивает datetime and datetime
Нет, имею ввиду. Мне нужно все время сравнивать, сейча время в промужутке между 21:00 и 6:00. Или нет? То есть, мне дата не нужна. Только временные промежутки.
источник

A

Alex in Django [ru] #STAY HOME
В зависимости от этого, выдавать пользователю уже тот или иной контент.
источник

AG

Artem Gubatenko in Django [ru] #STAY HOME
datetime содержит как дату, так и время. Сравнивай timezone с сегоднешней датой и времением 21:00, timezone.now() и timezone с сегоднешней датой и временем 6:00
источник