Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[4주차] 기본/도전 과제 제출 #3

Open
wants to merge 5 commits into
base: main
Choose a base branch
from
Open

Conversation

hannah100-coder
Copy link
Contributor

@hannah100-coder hannah100-coder commented Nov 7, 2022

SERVER PR


🐕 과제 구현 명세

  • [기본]4주차 세미나에서 진행한 내용입니다.
  • [도전] 넷플릭스 수리남 컨텐츠 조회, 생성하는 API 2개를 구현하였습니다.

GET - api/contents/:contentsId
스크린샷 2022-11-16 오전 2 31 39

POST - api/contents
스크린샷 2022-11-16 오전 2 33 14
스크린샷 2022-11-16 오전 2 33 33


🐥 이런 점이 새로웠어요 / 어려웠어요

  • [기본] userController의 모든 api 에서 'data'에 빨간 줄이 생기고 'an expression of type 'void' cannot be tested for truthiness'라는 메시지가 떠서 헤매었는데, 알고보니 userService에서 return data;를 안해줘서 생긴 오류였어요!! 리턴값이 없으니, data 값이 void가 되어 null 여부를 파악할 수 없기 때문!!
  • [도전] 새로운 풀리퀘를 위해서는 새로운 브랜치를 파야한다는 것을 배웠습니다..(코리조 감사함다)
  • [도전] API를 짜기 전에 ERD를 먼저 구상해보았는데, 3주차 때 구상했던 Response대로 값을 받으려면 생각보다 테이블 구조가 복잡해질 것 같아 우선 그냥.. Contents 테이블에 때려박았습니다. 테이블을 분리하여 항목을 배열로 받는 것, 이미지나 에피소드 비디오를 분리하는 것등 생각보다 고려해야할 사항이 자꾸 떠올라서 당황스럽고 재미있었습니다!!
  • [도전] 세미나 때는 진도 따라가느라 바빠서 잘 못느꼈는데, prisma 너무 신기하고 멋있어요!! 그런데 컬럼명을 수정하고 npx prisma db push를 해주면, 컬럼명이 바뀜과 동시에 이전에 넣었던 데이터들이 싹 날아가더라구요. 물론 확인차 질문을 하고 제가 yes를 해야 진행되지만,,, 날리는 거 없이 수정하는 방법은 없는지 알아봐야겠습니다.


const data = await prisma.user.create({
data: {
userName: name, //userName으로 받은 거를 name에 담어.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

name 이라는 이름으로 받은 값을 userName이라는 필드에 담는다 가 맞습니다!

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

아 반대로 이해하고 있었군여 정정해주셔서 감사합니다!!!

@hannah100-coder hannah100-coder changed the title [4주차] 기본 과제 제출 [4주차] 기본/도전 과제 제출 Nov 15, 2022
@dragontaek-lee
Copy link
Member

dragontaek-lee commented Nov 16, 2022

db push는 프로토타입용인것으로 알고 있어요!

그러니까 처음으로 세팅하며 schema를 테스트해보고 적용해보는 단계에서 사용되고,
데이터가 들어온 시점부터는 사용되지 않습니다!

가장 좋은 방법은 DB설계를 잘해서 스키마를 수정하지 않는것이고, 만약 바꾸게 된다면 DBMS에서 직접 바꾸는게 좋은것 같아요. 꼭 prisma를 사용하려고 한다면 prisma migrate를 사용하는게 좋아 보입니다!!
https://www.prisma.io/docs/concepts/components/prisma-migrate/db-push#choosing-db-push-or-prisma-migrate

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants