개발자 블로그

Timezone Setting 본문

Django/오늘의 공부

Timezone Setting

hayongwoon 2022. 7. 30. 13:02

datetime객체는 naive datetime(without timezone) aware datetime(with timezone) 객체가 있습니다. 현재 timezone 활성화되어있는 데(use_TZ = True, in setting), created_at 필드에 timezone 없는 naive datetime 객체를 대입하셔서 발생하는 "경고" 입니다. 이를 timezone 있는 aware datetime으로 변환하셔서 대입하시면 해당 경고는 사라진다.

 

참고로 서비스가 여러 timezone의 유저에게 서비스를 제공한다면 timezone 설정을 살려두시는 것(use_TZ=True)이 좋습니다. 대한민국은 하나의 시간대만 있지만, 해외에서는 국내 서비스라 하더라도 여러 시간대가 있는 나라가 많고, 국내 서비스지만 해외에 거주하는 사람들에게도 서비스를 제공해야할 경우도 많다.

장고는 기본적으로 timezone 을 지원하고 있으니, 가급적 이 설정을 살려서 쓰는게 좋다. DB에는 UTC로 저장해두고, 각 유저의 timezone에 맞춰서 변환해서 보여주는 것