def search(request): q = request.GET.get('q') searchq = request.GET.get('searchq') if q: if searchq == 'userq': users = UserDocument.search().query("match", username=q) if (len(list(users)) == 0): messages.warning(request, 'Results not found', 'danger') return render(request, 'search_user.html', { 'users': users, 'searchValue': q }) if searchq == 'tagq': tags = TagDocument.search().query("match", title=q) if (len(list(tags)) == 0): messages.warning(request, 'Results not found', 'danger') return render(request, 'search_tag.html', { 'tags': tags, 'searchValue': q }) posts = PostDocument.search().query("match", statement=q) if (len(list(posts)) == 0): messages.warning(request, 'Results not found!', 'danger') #posts = posts.to_queryset() else: posts = '' return render(request, 'search.html', {'posts': posts, 'searchValue': q})
def search_everything(request): title = 'Search Results' mq = request.GET.get('mq') searched_results = {} if request.method == 'GET': if mq: searched_users = UserDocument.search().query('match', name=mq) if searched_users: users = {'users': list(searched_users)} searched_results.update(users) searched_groups = GroupDocument.search().query('match', title=mq) if searched_groups: groups = {'groups': list(searched_groups)} searched_results.update(groups) searched_photoalbums = PhotoalbumDocument.search().query('match', title=mq) if searched_photoalbums: photoalbums = {'photoalbums': list(searched_photoalbums)} searched_results.update(photoalbums) searched_posts = PostDocument.search().query('match', body=mq) if searched_posts: posts = {'posts': list(searched_posts)} searched_results.update(posts) return render(request, 'search/searched_results.html', { 'searched_results': searched_results, 'title': title }) else: searched_results = {} return redirect(request.META.get('HTTP_REFERER', '/'))
def search_posts(request): q = request.GET.get('q') if q: searched_posts = PostDocument.search().query('match', body=q) else: searched_posts = '' return searched_posts
def search(request): q = request.GET.get('q') if q: posts = PostDocument.search().query("match", title=q) else: posts = '' return render(request, 'search/search.html', {'posts': posts})
def search(request): q = request.GET.get('q') if q: query = MultiMatch(query=q, fields=['text']) posts = PostDocument.search().query(query) else: posts = '' return render(request, 'search/search.html', {'posts': posts})
def search(request): q = request.GET.get('q') if q: #p = PostDocument.search().query("match", title=q) qy = Q("multi_match", query=q, fields=['title', 'text']) s = PostDocument.search() p = s.query(qy) posts = p.to_queryset() t = [_.to_dict(include_meta=False) for _ in p] else: posts = '' t = '' return render(request, 'search/search.html', {'posts': posts, 'ps': t})
def post_list(request): # posts = Post.objects.filter(published_date__lte=timezone.now()).order_by('published_date') # return render(request, 'blog/post_list.html', {'posts': posts}) q = request.GET.get('q') meta_info = {} if q: qy = Q("multi_match", query=q, fields=['title', 'text']) s = PostDocument.search() p = s.query(qy) posts = p.to_queryset() meta_info['results_count'] = len(posts) meta_info['query'] = q else: posts = Post.objects.filter( published_date__lte=timezone.now()).order_by('published_date') return render(request, 'blog/post_list.html', { 'posts': posts, 'meta_info': meta_info })
def search(request): q = request.GET.get('q') s = q.split(",") a = "Q('match', med_details='{}')".format(s[0]) i = 1 while i < len(s): a += '&Q(\'match\', med_details=\'{}\')'.format(s[i]) i += 1 if q: posts = PostDocument.search().query('bool', must=[eval(a)]) posts = posts.highlight_options(pre_tags=["<span class=\"result\">"], post_tags=["</span>"], order='score', fragment_size=1000) posts = posts.highlight('med_details') response = posts.execute() else: posts = '' posts = posts[0:10000] f = response.hits.total return render(request, 'search.html', {'posts': posts, 'f': f})