2010-02-25 19 views

Trả lời

13

Từ django q object documentation:

Bạn có thể soạn báo cáo phức tạp tùy ý bằng cách kết hợp đối tượng Q với & và | các toán tử và sử dụng nhóm cha mẹ. Ngoài ra, Q đối tượng có thể được phủ nhận bằng cách sử dụng ~ nhà điều hành, cho phép tra cứu kết hợp kết hợp cả một truy vấn bình thường và một (KHÔNG) truy vấn phủ nhận:

Q(question__startswith='Who') | ~Q(pub_date__year=2005) 

Vì vậy, tôi muốn giới thiệu

Record.objects.filter(Q(parameter__icontains="wd2") | ~Q(parameter__icontains="wd")) 
+0

Wow , không biết về ~ nhà điều hành. Cảm ơn nhiều! – DataGreed

+1

Nó có đẹp không? Tôi thích sử dụng lại các ý tưởng logic cấp thấp trong mô hình thành phần cấp cao hơn! –

Các vấn đề liên quan