오답노트
[Django] Django File - Media File 본문
Media File
Media File 은 유저가 업로드하는 정적 파일을 의미한다.
Media File은 서비스를 해야지 유저가 업로드하므로 Static File 처럼 서비스 시, 개발 시를 구분하여 file을 생각할 필요는 없다. 유저가 업로드 했을때 Media File을 업로드 했을 때 Medai File이 저장될 위치만 지정하면된다.
settings.py 에서 다음과 같이 정의하자.
MEDIA_URL은 url로 접속할 때 사용하고, MEDIA_ROOT는 url로 접속했을 때 찾아가는 디렉토리이다.
하지만 개발할 때에는 위 경로를 자동으로 찾아가지 않는다. 그래서 아래와 같은 코드를 추가해서 개발할 때에도 찾아갈 수 있도록 해줘야한다. 아래 코드는 절대 앱의 urls.py가 아닌 프로젝트의 urls.py에 입력해야한다.
media file 정보를 저장하기 위한 model도 생성한다.
ImageField는 이미지 파일명이 들어가는 컬럼을 의미한다.
urls.py 에 CreateView를 사용해서 이미지를 등록할 수 있는 페이지를 만들고, 이미지를 업로드 후에 업로드한 이미지를 확인 할 수 있도록 DetailView를 만들어보자.
그리고 각각에 대한 장고 템플릿도 만들어 주었다.
실행 결과는 다음과 같다.
'Python > Django' 카테고리의 다른 글
[Django] Django File - Static File (0) | 2022.11.19 |
---|---|
[Django] 기본 View 와 Generic View (0) | 2022.11.19 |
[Django] Django Form (1) | 2022.11.17 |
[Django] Manager & QuerySet (0) | 2022.11.16 |
[Django] 모델 관계 설정 (0) | 2022.11.15 |