Django와 AWS S3 연동하기

Nina·2020년 11월 27일
0

Python/Django

목록 보기
3/4
post-thumbnail


(AWS에서 버킷 생성하고 사용자를 추가해서 ACCESS KEY 받은 이후 작업)

1. settings.py

pip install django-storages
pip install boto3


ACCESS KEY ID와 ACCESS KEY는 보안을 위해 my_settings에서 임포트 하여 사용한다.
INSTALLED_APPS에는 storages를 추가한다.

2. views.py

import uuid
import boto3


s3_client를 정의한다. 파일은 request.FILES로 들어가기 때문에 기타 json 데이터는 request.POST로 받아야함.


여러개의 파일을 첨부할 수 있기 때문에 getlist를 사용했다. uuid를 이용해 파일명을 지정하였다.

3. Postman


파일이 들어오는 request.FILES의 키값을 'attachment', json 데이터가 들어오는 request.POST의 키값을 'data' 설정해서 포스트맨으로 테스트를 해보면 s3에 파일이 업로드되고 mysql에 데이터가 저장되는 것을 확인할 수 있다.

profile
https://dev.to/ninahwang

0개의 댓글