1. 문제 상황
테스트 코드를 짜 보려고 pytest를 설치했다. 근데 해당 테스트 코드를 실행하는 도중 예기치 못한 문제를 맞닥뜨렸다. django-dotenv와 pytest-dotenv의 naming conflict가 발생했다.
해당 글에서 댓글에는 이렇게 적혀있다.
Warning to Django Users: If you're using django-dotenv to call dotenv.read_dotenv() from your manage.py module, this library will break it. This library requires python-dotenv, which also uses the 'dotenv' namespace, and you'll end up a ModuleNotFoundError when manage.py is run.
– GlenVaughan
django-dotenv에 이슈로 올라왔는데 해당 문제가 해결이 안 됐나 보다 - issue
2. 해결
난 그냥 django-dotenv를 삭제하고 코드를 수정했다.
# manage.py
# 기존 코드
...
if __name__ == '__main__':
dotenv.read_dotenv()
# 변경 후 코드
...
if __name__ == '__main__':
dotenv.load_dotenv()
'Django' 카테고리의 다른 글
Gunicorn에 대해 알아보자. (0) | 2022.12.23 |
---|---|
[Pytest] - TestRunner 설정하기 (0) | 2022.12.19 |
[DRF] - Serializers Class 알아보기(1) (0) | 2022.12.14 |
[DRF - Django Rest Framework] Serializer Field 톺아보기(3) (0) | 2022.12.13 |
Django Queryset - Lazy QuerySet 과 올바른 Caching 사용법 (0) | 2022.12.09 |