2012-03-21 5 views
1

카테고리 트리가 있는데 카테고리 트리에있는 모든 제품을 가져오고 싶습니다. MPTT의 설명서에 따르면 개체를 가져 오기 위해 호출 할 수있는 메서드 만 있습니다. 나는 내가 그것을 예를 들어, 관련 개체 작업을 얻을 수있는 방법Django MPTT 관련 객체 가져 오기

궁금 해요 것 이상이 구문 :

Product.objects.get(Q(category__ancestors=my_category)|Q(category=my_category)) 

장고 - mptt이 같은 일이 있나요?

답변

1

제품의 검색어에 get_descendants()의 검색어를 중첩 시도해보십시오하는 것보다 동일해야합니다

Product.objects.get(category__in=my_category.get_descendants(include_self=True)) 
:하지만,

Product.objects.get(category__pk__in=my_category.get_descendants(include_self=True).values_list('pk')) 
+0

내가 서브 쿼리를 확실하지 같은 적어도 그것을 작동합니다 ! – leech

+0

"하위 쿼리가 마음에 들지 않습니다."나는 정말 당신이 무슨 뜻인지 궁금합니다. 의견을 보내 주셔서 감사 드리며 [질문 닫기] (http://meta.stackexchange.com/questions/5234/how-does-accepting-an-answer-work) – jpic

+0

나는 그것을 이해하기 때문에 귀하가 'my_category.get_descendants()'와 같은 질의를 다른 질의에 넣으면 하위 질의가 작성됩니다. – leech