0
我有一個搜索字段,用戶可以在其中搜索用戶的配置文件。如何根據視圖中的多個查詢拉動Django對象? Django
這是視圖的相關部分:
elif 'q' in request.GET:
context_dict={}
try:
q = request.GET.get('q')
users = User.objects.filter(Q(username__icontains=q)
| Q(first_name__icontains=q) | Q(last_name__icontains=q)
| Q(email__icontains=q) | Q(profile__city__name__icontains=q))
context_dict['users'] = users
return render(request, 'proj_name/people_search.html', context_dict)
工作正常 - 如果某些搜索「彼得」它帶回它的第一個名字是彼得的所有用戶。如果用戶搜索搜索「慕尼黑」,它將帶回該城市的所有用戶。
但是,如果有人搜索「彼得慕尼黑」,它不會帶回任何東西。有沒有辦法根據所有查詢而不是一個或另一個查詢結果?
的或者是沒有問題的;問題是每個字段都匹配整個字符串,「Peter Munich」既不是有效的first_name,也不是有效的city_name。 –