def test_search1(self): for title in self.titles: video = Video.objects.all()[0] sqs = SearchQuerySet().models(Video) video.title = title video.save() reset_solr() result = SearchForm.apply_query(video.title, sqs) self.assertTrue(video in [item.object for item in result], u"Failed to find video by title: %s" % title) result = SearchForm.apply_query(u'BBC', sqs) self.assertTrue(video in [item.object for item in result], u"Failed to find video by 'BBC' with title: %s" % title)
def search(self, rdata, user, testing=False): sqs = SearchQuerySet().result_class(VideoSearchResult) \ .models(Video) rdata['q'] = rdata['q'] or u' ' q = rdata.get('q') if q: sqs = SearchForm.apply_query(q, sqs) form = SearchForm(rdata, sqs=sqs) else: form = SearchForm(rdata) if form.is_valid(): qs = form.search_qs(sqs) else: qs = SearchQuerySet().none() #result = [item.object for item in qs] #qs1 = Video.objects.filter(title__contains=rdata['q']) #for o in qs1: # if not o in result: # print o.title display_views = form.get_display_views() output = render_page(rdata.get('page', 1), qs, 20, display_views=display_views) output['sidebar'] = render_to_string('search/_sidebar.html', dict(form=form, rdata=rdata)) if testing: output['sqs'] = qs return output
def search(self, rdata, user, testing=False): sqs = SearchQuerySet().result_class(VideoSearchResult) \ .models(Video) q = rdata.get('q') if q: sqs = SearchForm.apply_query(q, sqs) form = SearchForm(rdata, sqs=sqs) else: form = SearchForm(rdata) if form.is_valid(): qs = form.search_qs(sqs) else: qs = SearchQuerySet().none() #result = [item.object for item in qs] #qs1 = Video.objects.filter(title__contains=rdata['q']) #for o in qs1: # if not o in result: # print o.title display_views = form.get_display_views() output = render_page(rdata.get('page', 1), qs, 20, display_views=display_views) output['sidebar'] = render_to_string('search/_sidebar.html', dict(form=form, rdata=rdata)) if testing: output['sqs'] = qs return output
def test_search(self): reset_solr() sqs = VideoIndex.public() qs = Video.objects.exclude(title='') self.assertTrue(qs.count()) for video in qs: result = SearchForm.apply_query(video.title, sqs) self.assertTrue(video in [item.object for item in result])
def test_search(self): reset_solr() sqs = SearchQuerySet().models(Video) qs = Video.objects.exclude(title='') self.assertTrue(qs.count()) for video in qs: result = SearchForm.apply_query(video.title, sqs) self.assertTrue(video in [item.object for item in result])
def search(self, rdata, user, testing=False): sqs = VideoIndex.public() rdata['q'] = rdata['q'] or u' ' q = rdata.get('q') if q: sqs = SearchForm.apply_query(q, sqs) form = SearchForm(rdata, sqs=sqs) else: form = SearchForm(rdata) if form.is_valid(): qs = form.search_qs(sqs) else: qs = VideoIndex.public().none() #result = [item.object for item in qs] #qs1 = Video.objects.filter(title__contains=rdata['q']) #for o in qs1: # if not o in result: # print o.title display_views = form.get_display_views() output = render_page(rdata.get('page', 1), qs, 20, display_views=display_views) output['sidebar'] = render_to_string('search/_sidebar.html', dict(form=form, rdata=rdata)) # Assume we're currently indexing if the number of public # indexed vids differs from the count of video objects by # more than 1000 is_indexing = cache.get('is_indexing') if is_indexing is None: is_indexing = Video.objects.all().count() - VideoIndex.public( ).count() > 1000 cache.set('is_indexing', is_indexing, 300) output['is_indexing'] = is_indexing if testing: output['sqs'] = qs return output