2017-07-18 18 views
1
def get_queryset(self): 
     key = self.request.GET['search_text'] 
     customer_list = customer_info.objects.all() 
     # temp = 
     for term in key.split(): 
      temp = temp | customer_list.filter(Q(fName__icontains=term)|Q(lName__icontains=term)) 
     return temp 

如何將temp的值分配給customer_info對象的null查詢集,以便我可以使用過濾器列表將union temp與返回的值進行比較。基本上,我將搜索框文本分開,然後使用列表中的每個字符串過濾表併合並結果初始結果。在Django中得到空或者空支付

+0

注意在Python和Django的推薦款式是將您的模型命名爲CustomerInfo。 – Alasdair

回答

2

你可以得到none()空查詢集:

MyModel.objects.none() 

的另一種方法是orQ()對象組合在一起,而不是查詢集:

q = Q() 
for term in key.split(): 
    q = q | Q(fName__icontains=term) | Q(lName__icontains=term) 
return customer_info.objects.filter(q)