Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | |
7 | 8 | 9 | 10 | 11 | 12 | 13 |
14 | 15 | 16 | 17 | 18 | 19 | 20 |
21 | 22 | 23 | 24 | 25 | 26 | 27 |
28 | 29 | 30 | 31 |
Tags
- VITE
- Javascript
- 알고리즘
- vitepwa
- react
- Python
- db
- QuerySetAPI
- PWA
- SSAFYcial
- sqld
- 셀프넘버
- 싸피
- 플로이드워셜
- SQL
- 백준
- Django
- git
- queryset
- 머신러닝종류
- TypeScript
- 14658
- 싸피10기
- js
- pwa적용하기
- 싸피셜
- 리액트
- SSAFY
- 데코레이터
- unionfind
Archives
- Today
- Total
Meme's IT
[Django] Query 본문
장고 → 지연로딩(lazy loading)이라는 기술을 사용
데이터를 실제로 사용할 때 DB로 쿼리를 전송한다.
articles = Article.objects.all()
이때는 안하고
print문으로 출력했을 때 쿼리문을 2번 호출한다.
print(articles[0].title)
print(articles[1].title)
즉, 실제로 사용할 때 쿼리문이 DB로 전송된다
# articles: 전체 데이터 가져오기 1번
for article in articles:
# article 이 가지고 있음 -> 안함
print(article.title)
# 정참조 -> 호출 -> N번
print(article.user.username)
# 역참조 -> 호출 -> N번
print(article.comment_set.all())
정참조와 역참조시에도 호출이 된다
이를 늘 유의해야함 → 성능에 큰 영향
'BackEnd > Django' 카테고리의 다른 글
[Django] API와 REST (0) | 2023.10.18 |
---|---|
[Django] 댓글 구현(N : 1) (0) | 2023.10.17 |
[Django] Fixtures (0) | 2023.10.17 |
[Django] N:M 팔로우 기능 구현 (0) | 2023.10.17 |
[Django] N:M 프로필 만들기 (0) | 2023.10.17 |