장고를 활용한 웹을 개발하려는 중,
이미지 파일을 불러와 웹사이트에 추가하려 했다.
하지만 ImageField()를 활용하려는데 다음과 같은 오류가 발생했다.
Cannot use ImageField because Pillow is not installed.
ImageField를 사용하려면 Pillow 패키지를 설치해야 하기 때문이다.
Pillow 패키지를 설치해주자.
Pillow 패키지 설치
다음과 같이 터미널에 입력 후 엔터!
pip install Pillow
만약, pipenv로 가상 환경을 생성했을 경우엔 다음과 같이 작성하자
pipenv install Pillow
이렇게 해주면 pillow 패키지 설치 완료!
하지만,,,
다음과 같이 pillow 패키지를 설치해도
Cannot use ImageField because Pillow is not installed 오류가 발생했다.
아마 python 버전과 pillow 패키지 버전이 맞아야 하는데 그렇지 않아서 발생한 것 같다.
각 경우의 수마다 해결방법을 달리 해보자
#1. Python 3.6.4가 설치된 Mac 에서 오류가 발생했을 경우
pip uninstall Pillow
pip install Pillow==5.0.0
기존의 Pillow 패키지를 삭제 후 5.0 버전의 Pillow를 다운
(pipenv에서 shell 생성했으면, pip을 pipenv로 바꿔서 수행)
#2. 패키지 PIL을 사전에 설치했을 경우
pip uninstall PIL
pip uninstall Pillow
pip install Pillow
기존의 설치된 PIL 패키지 삭제 후,
Pillow 패키지 삭제 후, 다시 Pillow 패키지를 다운로드
(pipenv에서 shell 생성했으면, pip 을 pipenv로 바꿔서 수행)
#3. 그 외의 경우
python -m pip uninstall Pillow
python -m pip install Pillow
python -m pip uninstall Pillow python -m pip install Pillow
(pipenv에서 shell 생성했으면, pip 을 pipenv로 바꿔서 수행)
이렇게 함으로써 오류를 해결할 수 있다.
혹시나 이렇게 했음에도 불구하고 안 될 경우는
댓글을 남겨주시면 참고하여 새로운 오류 해결법을 찾을 예정 :)