에러

RuntimeWarning: DateTimeField Report.input_date received a naive datetime ... while time zone support is active.

integerJI 2020. 6. 28. 20:07

RuntimeWarning: DateTimeField Report.input_date received a naive datetime ... while time zone support is active.

 

시간을 저장하는 부분에서 해당 에러가 나왔다.

 

이 오류는 settings.py에 있다.

 

USE_TZ = True로 되어있기 때문이다

 

True를 False로 바꾸면 더이상 에러는 나오지 않는다.

 

자세한 분석은

 

https://brownbears.tistory.com/42

 

[Django] model 내 DateTimeField 사용시 RuntimeWarning: DateTimeField received a naive datetime 에러

장고에서 제공하는 모델을 사용하여 개발할 때, settings.py에 아래와 같이 설정이 되어 있을 것입니다. LANGUAGE_CODE = 'en-us' TIME_ZONE = 'Asia/Seoul' USE_I18N = True USE_L10N = True USE_TZ = True pgsql..

brownbears.tistory.com

 

USE_TZ를 아예 꺼버리면 나중에 해외의 서비스나 Timezone이 바뀌는 일이 생길 경우 문제가 생긴다고한다.

 

자세한 내용은 해당 블로그에서 확인이 가능하다!

https://inspireworld.tistory.com/144

 

제대로된 해결 방법 - received a naive datetime while time zone support is active.

USE_TZ = False로 해버리라는 해결책이 구글링으로 검색되던데.. 이렇게 하면 tz을 꺼버리게 되는거다. 국내에서만 사용할 서비스라면 모르겠지만 그게 아니라면 나중에 timezone이 바뀌게 되는 경우

inspireworld.tistory.com