0
여러 개의 값이있는 체크 박스가 있습니다. 예 : hobbies
. 사용자가 hobbies
을 선택하면 그는 에 명의 취미가있는 사람을보고 싶어합니다. 나는 명확을 위해 세부로 이동 해달라고장고 : 배열의 모든 값을 쿼리하는 방법?
그래서 여기에 내가 모든 검사 값을 읽어 내 "큰"쿼리에 넣어 당신은 어떻게 생각 수 있으므로입니다 : q
:
hobbies2 = [int(l) for l in g.getlist('hobbies2')]
if len(hobbies2):
q = q & Q(personne__hobbies2__in=hobbies2)
문제는 공통적으로 취미가있는 모든 사람을 반환한다는 것입니다 (예 : "or
", 예 : "and
").
and
으로 많은 값을 얻으려면 어떻게해야하나요?
취미가 여러 개인 경우 'personne__hobbies2 = hobby'는 사람을 제외하지 않습니까? 예를 들어 : kayak = 1, ski = 2. 이것은'personne__hobbies2 = 1' 다음에'personne__hobbies2 = 1'을 먼저 필터링합니다. 그게 효과가있을 것이라고 확신합니까? –
연속 Q 개체가 작동하지 않습니다. 나는 # 1 해결책을 여기에서 시도했다 : http://stackoverflow.com/questions/8618068/django-filter-queryset-in-for-every-item-in-list 그것은 나던 너무 일한다. –
링크를 제공해 주셔서 감사합니다. Q 쿼리를 제거하기 위해 답변을 업데이트했습니다. 그러나 연속 필터는 링크에서 보여지기 때문에 작동해야합니다. – Soviut