[drf | creating ingredients] Build a Backend REST API - 34

Hyeseong·2021년 3월 8일
0

Implement feature for creating ingredients❤

ingredient의 retrieving 말고 Creating을 해보도록 할게요.

test🧡

recipe/tests/test_ingredients_api.py

아래 첫번째 메서드는 key-value가 온전히 입력 되었을 경우 200을 띄우고 아래 테스트 메서드는 key값인 name만 있고 value가 없을경우 서버에서 400을 띄우게 하는 테스트를 짠거에요.(둘다 POST 요청이쥬?!)

views💛

IngredientViewSet클래스의 내부 상속을 받는 녀석을 하나 더 늘릴게요. 30번째 줄에 mixins.CreateModelMixin을 추가하는 거에요.

또한 41번째 줄에는 perform_create메서드를 넣어서 추가적인 데이터까지 넣기 위해서 메서드를 정의했는데요. 포인트는 save()메서드 안에 키워드 인자로 지정해주는 거에요.

test💚

docker-compose up💙

아래 명령어를 실행해서 서버를 실행시킬게요.

docker-compose up

Browserble API💜

일단 유저 생성을 할게요.

email : test@testtest.com
password : testpass
name : testname

로그인 한 이후 토큰 발급을 받을게요.(먼저 URL 주소창 확인하고 가주세요.)

modheaders 크롬 extension을 실행 시켜주세요.
발행 된 토큰을 박아 넣을게요.

그리고 이번에는 ~/api/recipe/ 엔드포인트로 이동할게요.
그리고 ingredients의 키의 value값 링크를 클릭해서 페이지를 넘어 가도록 할게요.

그럼 Ingredient List 페이지로 바뀌는데요.
Cabbage라고 Name입력란에 입력하고 POST버튼을 누를게요.

그럼 등록된 걸 볼 수 있어요. RESPONSE로 화면에 반환 됬네요.

다시 URL 주소창에 ~/api/recipe/ingredients/로 가게되면
리스트로 딕셔너리 하나가 들어 있는 모습이 확인되요.

두개를 등록하면 아래와 같겠조?

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

0개의 댓글