Django ImageField속성

Django의 InageField속성.

아래 예시들은 이해를 위해 파이썬 shell을 실행(인터프리터 모드)하여 결과 값을 얻은 화면이다.

post에 thumbnail이라는 칼럼에 이미지를 저장한 경우.
파일 이름이 towel.png라면

post.thumbnail

파일 정보 보기

>>> post.thumbnail
<ImageFieldFile: post/towel.png>

post.thumbnail.name

name속성은 MEDIA_ROOT기준의 이미지 상대경로를 나타낸다.

MEDIA_ROOT와 MEDIA_URL 혼동주의

>>> post.thumbnail.name
'post/towel.png'

post.thumbnail.path

시스템 전체를 기준으로 이미지의 절대경로를 나타낸다

>>> post.thumbnail.path
'D://PycharmProjects//pytowel//media//post//towel.png'

post.thumbnail.size

저장된 파일의 크기를 Byte단위로 나타낸다

post.thumbnail.size
283231

post.thumbnail.url

MEDIA_URL을 기준으로 URL을 생성한다.

>>> post.thumbnail.url
'/media/post/towel.png'

실제 경로가 아닌 접근 URL생성

img src 태그로 이미지 삽입에 사용할 URL이 생성됨

MEDIA_ROOT와 MEDIA_URL 혼동주의

Leave a Comment