바뀜

둘러보기로 가기 검색하러 가기
149 바이트 추가됨 ,  2021년 6월 2일 (수) 10:29
29번째 줄: 29번째 줄:  
</syntaxhighlight>
 
</syntaxhighlight>
 
==필터 사용==
 
==필터 사용==
 +
특정 조건에 대해 True인 튜플들을 가져온다.
 +
 
===필터로 걸러서 가져오기===
 
===필터로 걸러서 가져오기===
 
<syntaxhighlight lang="python">
 
<syntaxhighlight lang="python">
36번째 줄: 38번째 줄:  
# 모델.objects는 객체목록을 받는다는 의미이다.
 
# 모델.objects는 객체목록을 받는다는 의미이다.
 
def index(request):
 
def index(request):
     목록 = 모델.objects.filter(칼럼명 = True, >0 따위의 조건들...)
+
     목록 = 모델.objects.filter(칼럼명="칼럼")  # True가 나오는, >0 따위의 조건들을 건다.
 
     목록2= 목록.objects.filter(조건들..)  # 걸러진 객체들에 또다시 필터를 걸 수도 있다.
 
     목록2= 목록.objects.filter(조건들..)  # 걸러진 객체들에 또다시 필터를 걸 수도 있다.
 
</syntaxhighlight>필터는 몇번이라도 걸 수 있는데, 장고는 지연평가 방식을 사용하기 때문에 실제로 데이터를 질의하는 것은 한 번 뿐이다. 덕분에 부하가 걸리지 않고도 filter를 자유롭게 사용할 수 있다.<syntaxhighlight lang="python">
 
</syntaxhighlight>필터는 몇번이라도 걸 수 있는데, 장고는 지연평가 방식을 사용하기 때문에 실제로 데이터를 질의하는 것은 한 번 뿐이다. 덕분에 부하가 걸리지 않고도 filter를 자유롭게 사용할 수 있다.<syntaxhighlight lang="python">
 
def index(request):
 
def index(request):
     목록 = 모델.objects.filter(칼럼명 = True, >0 따위의 조건들...)
+
     목록 = 모델.objects.filter(칼럼명>0)
 
     .filter(조건)
 
     .filter(조건)
 
     .filter(조건2)
 
     .filter(조건2)
80번째 줄: 82번째 줄:  
</syntaxhighlight>
 
</syntaxhighlight>
 
===제외하기===
 
===제외하기===
 +
필터가 True를 가져온다면 exclude는 False를 내는 튜플들을 가져온다.
 +
 +
 
필터로 원하는 조건을 받아들이는 것과 반대로, 조건에 따라 제외하는 것도 가능하다. 필터와 동일하게 중첩으로 걸 수 있다.<syntaxhighlight lang="python">
 
필터로 원하는 조건을 받아들이는 것과 반대로, 조건에 따라 제외하는 것도 가능하다. 필터와 동일하게 중첩으로 걸 수 있다.<syntaxhighlight lang="python">
 
from django.shortcuts import render
 
from django.shortcuts import render
익명 사용자

둘러보기 메뉴