바뀜
→필터로 걸러서 가져오기
</syntaxhighlight>
</syntaxhighlight>
==필터 사용==
==필터 사용==
특정 조건에 대해 True인 튜플들을 가져온다.
===필터로 걸러서 가져오기===
===필터로 걸러서 가져오기===
<syntaxhighlight lang="python">
<syntaxhighlight lang="python">
# 모델.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)
</syntaxhighlight>
</syntaxhighlight>
===제외하기===
===제외하기===
필터가 True를 가져온다면 exclude는 False를 내는 튜플들을 가져온다.
필터로 원하는 조건을 받아들이는 것과 반대로, 조건에 따라 제외하는 것도 가능하다. 필터와 동일하게 중첩으로 걸 수 있다.<syntaxhighlight lang="python">
필터로 원하는 조건을 받아들이는 것과 반대로, 조건에 따라 제외하는 것도 가능하다. 필터와 동일하게 중첩으로 걸 수 있다.<syntaxhighlight lang="python">
from django.shortcuts import render
from django.shortcuts import render