Django | get_or_create 메소드

김민호·2021년 10월 17일
0

DJANGO

목록 보기
12/18
post-thumbnail

get_or_create

개념

get_or_created 메서드는 객체를 조회할 때 유용하게 사용된다.
return 값은 (object, created)라는 튜플 형식이다.
첫번째 인자(object)는 우리가 꺼내려고 하는 모델의 인스턴스이고,
두번쨰 인자(created)는 boolean flag이다

boolean flagTrue 또는 False를 갖는 온오프 스위치이다

created = True 라면, 첫번째 인자(object)의 인스턴스가 get_or_created 메서드에 의해 생성되었다는 것을 의미한다

created = False 라면, 이미 데이터베이스에 있던 인스턴스를 꺼내와서 첫번째 인자(object)에 저장했음을 의미한다

이해

  • createdTrue 또는 False를 갖고 있는 flag이다
  • createdTrue라면 없었다는 것이니까 새로 리뷰좋아요를 누르지 않았다는 것이고
  • createdFalse라면 기존 DB에 이미 인스턴스가 있었다는 것 = 이미 좋아요를 눌렀다는 상태를 의미한다.
  • not created 상태, 즉 False 상태이면 .delete() 메소드를 통해 다시 누른다는 것은 누른 좋아요를 취소한다는 것
  • 그렇지 않다면, 즉 True상태이면 좋아요를 누르겠다는 것

참고 : https://whatisthenext.tistory.com/121

profile
개발자로서의 삶은 https://velog.io/@maxminos 에서 기록하고 있습니다 😀

0개의 댓글