[drf | uuid] Build a Backend REST API - 44

Hyeseong·2021년 3월 8일
0

Modify recipe model👨‍🏭

앞선 시간에 Pillow에 대해서 언급하고 경로와 링크 지정에 대한 셋업을 조금 했는데요. 이미지 파일을 경로를 저장할 ImageFiled에 대응하는 변수를 지정하고 파일이름을 uuid로 지정하기 위한 셋업을 작성해보도록 할게요.

test_models👳‍♂️

가장 윗 줄에 unittest.mock.patch 메서드를 사용할게요.

core/tests/test_models👨‍🦲

@patch() 데코레이터는 외부 서비스에 의존하는 코드에 대한 테스트를 작성할 때 유용하게 쓰입니다. 예를 들어, API를 호출하는 코드에 대한 테스트를 작성할 때, 실제로 네트워크 연동을 하면 테스트가 느려지고, 깨지기 쉬워집니다.

recipe_image_file_path() 메서드가 있는데요. 반환 받은 값을 file_path라는 경로에 할당하게되요.

exp_path변수에는 = uuid를 박아 넣어서 이미지 파일 제목을 uuid를 넣
어 생성하게 만들고요.

아직 우리는 recipe_image_file_path() 함수를 선언하지 않았기에 models.py로 가서 만들게요.

models👩‍🦰

아래와 같이요.

os.path.join()메서드를 통해 경로를 병합하여 새 경로 생성을 하게되요.

UUID란? UUID는 기본적으로 어떤 개체(데이터)를 고유하게 식별하는 데 사용되는 16바이트(128비트) 길이의 숫자입니다.
참고자료

Recipe모델에는 새로운 필드인 image 변수를 ImageField를 통해 만들게요. upload_to=recipe_image_file_path 키워드 인자를 넣을건데요.

makemigrations 👦

모델을 변경했다면 makemigrations 명령어를 하는건 인지상정인거 아시조?

profile
어제보다 오늘 그리고 오늘 보다 내일...

0개의 댓글