자동 완성 양식의 백엔드 코드를 작성하고 있습니다. 내가 반품 한 각 항목은 해당 카테고리 내의 카테고리 이름과 숫자로 설명됩니다.문자열을 비교하기위한 장고 필터의 "in"또는 "reverse contains"쿼리
사용자가 "CAT123"을 입력하면 장고 필터를 사용하여 사용자 쿼리에 포함 된 범주 이름이나 숫자로 필터링합니다.
즉, 내가 좋아하는 쿼리를 실행하려면 :Entry.objects.filter(Q(category__in = query) | Q(num__in = query))
곳 필터 테스트 카테고리 AAA
쿼리 AAA 555
에있는 경우, 그리고 수 555
각각 쿼리 AAA 555
에있는 경우.
그러나 __in
은 목록에만 적용되는 것으로 보이며 __contains
은 다른 방식으로 확인합니다 ('AAA 555'는 'AAA'에 없음).
"문자열에 포함되어 있습니까?"아이디어에 사용할 올바른 필터 식은 무엇입니까?
필터가 Q(query__contains = category)
인 것처럼 보이게하려면 contains
표현을 뒤집을 방법이 있습니까?