개발자 블로그

0705 오늘의 공부 본문

Django/DRF

0705 오늘의 공부

hayongwoon 2022. 7. 5. 21:52

1. F expression

찜(좋아요) 기능은 product model에 있는 like_cnt 필드를 생성과 함께 업데이트를 해줘야한다. 업데이트 시 F()객체를 사용하지 않고 단순히 + 1을 하게 된다면, 레이스 컨디션 상황에 빠져 동시에 해당 기능이 원하는 값이 나오지 않을 수 있다. 

 

F()객체는 파이썬 메모리로 필드값을 가져오지 않고 디비 상에 필드를 참조하는 형식으로 race condition 상황을 피할 수 있다.

like view

 

2. Unique Constraints Fields

찜(좋아요) 기능은 사용자-상품 필드를 묶어 유일해야한다. 

like model

 

3. 모델의 필드 related_name 설정

참조하는 모델을 2개 이상일 때 두개를 구분하기 위함이고, 나중에 역참조 모델을 가져올때 해당 설정의 값으로 불러온다.

successdeal Model

 

4. aggregate를 활용한 역참조 필드 평균값 설정

product view serializer

 

'Django > DRF' 카테고리의 다른 글

0704 오늘의 공부  (0) 2022.07.04
오늘의 공부 정리 0701  (0) 2022.07.01