TIL 2020-06-03 Wed.

brighten_the_way·2020년 6월 6일
0

입으로 하는 개발

목록 보기
1/1

오늘 진짜 역대급

정신없었다.

오전

10:00 - 11:00

멘토 커피 타임. 서로 너무 정신없이 일하다가 오늘 다른 분들이랑 얘기도 좀 하고, 뭐가 어려운지 얘기하고, 도움도 얻고, 힘들어 하던 부분 공유도 하고. 진짜 정신적으로 힐링되는 것과 더불어 실질적인 도움도 받아서 너무 좋았다. 2주에 한 번 이런 시간이라니 엄청 기다려질 것 같다. 오늘 너무 빠르게 떠든 것 같은데, 다음에는 좀 더 귀기울여 듣는 시간이 되길.

11:00 - 11:45

8기 정육각팀 멘토링. Order - Cart - CartItem - Product 테이블이 각자 있는 팀인데, order table만 주문 상태를 관리하는 status column이 있고, cart table엔 status 관리용 column이 없었다. 덕분에 상태 관리가 안되어서 현재 활성화된 cart 객체를 가져올 때 Cart.objects.filter(user_id = user_id).all().last() 로 고객의 카트 가운데 가장 마지막에 생성된 객체에 접근했다. 이런 방법을 사용하면 다음과 같은 문제가 발생한다.

  1. 의미 없이 한 고객의 모든 주문 정보를 불러와야 한다.
  2. 정확히 지칭한 cart 객체가 아닌 대상을 (모호하게) 불러온다.
  3. 해당 cart가 이미 주문이 끝난 객체인지, 카트에 물건이 계속 담기는 중인지, 아니면 아예 주문이 취소된 객체인지 관리할 길이 없다.

가장 쉽게 문제를 해결하는 방법은 우선 정도를 따르는 것이다.
cart 테이블에 status 관리용 coulmn을 추가하고, status 자료만을 모아놓은 status 테이블과 one-to-many관계를 지어준다. 이제 우리는 원하는 카트를 정확하게 지칭할 수 있다.

Cart.objects.get(user_id = user_id, status_id = 1)

더이상 불특정 다수의 카트 객체를 모두 불러올 일이 없고, 활성화된 상태인 단 하나의 카트를 불러올 수 있게 되었다.

점심

용케 아침에 싸온 불고기랑 오렌지 도시락 먹음.
ㄱㄱㅎ님이랑 ㄱㅌㅅ님이랑 도란도란 나눠먹음.

오후

오후 내내 거실에서 멘토링. 후...
일단 내 목표는 팀에서 천천히 가는 팀원 한 명이 무조건 API 하나라도 제대로 만드는 것.
Get하나 Post하나
... 욕심일까 ?

마법의 소라고둥님 제가 욕심을 부리고 있는걸까요 ? <네니요>

django 몰랐던 사실

오늘의 걱정거리

  • main url 과 app url을 아직 분리 못하면 어떻게 해야하지 (1차 프로젝트 2주차 수요일인데)
  • 상세 데이터 꺼내서 JSON 만들어 줄 때, products = Product.objects.all() 하고 for loop 돌려서 각 객체 꺼내와야 한다는 걸. 바로 알려주는 것이 맞나? -> 맞음!
  • offset 이랑 limit은 무조건 걸어주는 걸로 ! 조건이 없어도 우선 무조건.
profile
Hello, World

0개의 댓글