Revise Complex lookups with Q objects , You should use the OR operator | .
It can look like this:
from django.db.models import Q
@login_required
def friends_search(request):
search_result = None
if request.method == 'POST':
if request.POST.get('fld_name'):
try:
fld_name = request.POST.get('fld_name')
q = Q(nickname__icontains=fld_name) | Q(family__icontains=fld_name)
search_result = UserProfile.objects.filter(q)
if not search_result:
search_result = 'По вашему запросу ничего не найдено.'
except Exception as exc:
search_result = 'В данный момент доступ к базе данных невозможен. Попробуйте повторить ваш запрос позже.'
t = loader.get_template('friends_search.html')
c = RequestContext(request, {
'search_result': search_result,
}, [custom_proc])
return HttpResponse(t.render(c))