本文整理汇总了Python中haystack.backends.BaseSearchQuery.add_narrow_query方法的典型用法代码示例。如果您正苦于以下问题:Python BaseSearchQuery.add_narrow_query方法的具体用法?Python BaseSearchQuery.add_narrow_query怎么用?Python BaseSearchQuery.add_narrow_query使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类haystack.backends.BaseSearchQuery
的用法示例。
在下文中一共展示了BaseSearchQuery.add_narrow_query方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: BaseSearchQueryTestCase
# 需要导入模块: from haystack.backends import BaseSearchQuery [as 别名]
# 或者: from haystack.backends.BaseSearchQuery import add_narrow_query [as 别名]
#.........这里部分代码省略.........
{
"foo": {
"gap_by": "day",
"start_date": datetime.date(2009, 2, 25),
"end_date": datetime.date(2009, 3, 25),
"gap_amount": 1,
},
"bar": {
"gap_by": "month",
"start_date": datetime.date(2008, 1, 1),
"end_date": datetime.date(2009, 12, 1),
"gap_amount": 1,
},
},
)
def test_add_query_facet(self):
self.bsq.add_query_facet("foo", "bar")
self.assertEqual(self.bsq.query_facets, [("foo", "bar")])
self.bsq.add_query_facet("moof", "baz")
self.assertEqual(self.bsq.query_facets, [("foo", "bar"), ("moof", "baz")])
self.bsq.add_query_facet("foo", "baz")
self.assertEqual(self.bsq.query_facets, [("foo", "bar"), ("moof", "baz"), ("foo", "baz")])
def test_add_stats(self):
self.bsq.add_stats_query("foo", ["bar"])
self.assertEqual(self.bsq.stats, {"foo": ["bar"]})
self.bsq.add_stats_query("moof", ["bar", "baz"])
self.assertEqual(self.bsq.stats, {"foo": ["bar"], "moof": ["bar", "baz"]})
def test_add_narrow_query(self):
self.bsq.add_narrow_query("foo:bar")
self.assertEqual(self.bsq.narrow_queries, set(["foo:bar"]))
self.bsq.add_narrow_query("moof:baz")
self.assertEqual(self.bsq.narrow_queries, set(["foo:bar", "moof:baz"]))
def test_set_result_class(self):
# Assert that we're defaulting to ``SearchResult``.
self.assertTrue(issubclass(self.bsq.result_class, SearchResult))
# Custom class.
class IttyBittyResult(object):
pass
self.bsq.set_result_class(IttyBittyResult)
self.assertTrue(issubclass(self.bsq.result_class, IttyBittyResult))
# Reset to default.
self.bsq.set_result_class(None)
self.assertTrue(issubclass(self.bsq.result_class, SearchResult))
def test_run(self):
# Stow.
self.old_unified_index = connections["default"]._index
self.ui = UnifiedIndex()
self.bmmsi = BasicMockModelSearchIndex()
self.bammsi = BasicAnotherMockModelSearchIndex()
self.ui.build(indexes=[self.bmmsi, self.bammsi])
connections["default"]._index = self.ui
# Update the "index".
backend = connections["default"].get_backend()
示例2: BaseSearchQueryTestCase
# 需要导入模块: from haystack.backends import BaseSearchQuery [as 别名]
# 或者: from haystack.backends.BaseSearchQuery import add_narrow_query [as 别名]
#.........这里部分代码省略.........
def test_more_like_this(self):
mock = MockModel()
mock.id = 1
msq = MockSearchQuery(backend=MockSearchBackend())
msq.more_like_this(mock)
self.assertEqual(msq.get_count(), 100)
self.assertEqual(msq.get_results()[0], MOCK_SEARCH_RESULTS[0])
def test_add_field_facet(self):
self.bsq.add_field_facet('foo')
self.assertEqual(self.bsq.facets, set(['foo']))
self.bsq.add_field_facet('bar')
self.assertEqual(self.bsq.facets, set(['foo', 'bar']))
def test_add_date_facet(self):
self.bsq.add_date_facet('foo', start_date=datetime.date(2009, 2, 25), end_date=datetime.date(2009, 3, 25), gap_by='day')
self.assertEqual(self.bsq.date_facets, {'foo': {'gap_by': 'day', 'start_date': datetime.date(2009, 2, 25), 'end_date': datetime.date(2009, 3, 25), 'gap_amount': 1}})
self.bsq.add_date_facet('bar', start_date=datetime.date(2008, 1, 1), end_date=datetime.date(2009, 12, 1), gap_by='month')
self.assertEqual(self.bsq.date_facets, {'foo': {'gap_by': 'day', 'start_date': datetime.date(2009, 2, 25), 'end_date': datetime.date(2009, 3, 25), 'gap_amount': 1}, 'bar': {'gap_by': 'month', 'start_date': datetime.date(2008, 1, 1), 'end_date': datetime.date(2009, 12, 1), 'gap_amount': 1}})
def test_add_query_facet(self):
self.bsq.add_query_facet('foo', 'bar')
self.assertEqual(self.bsq.query_facets, [('foo', 'bar')])
self.bsq.add_query_facet('moof', 'baz')
self.assertEqual(self.bsq.query_facets, [('foo', 'bar'), ('moof', 'baz')])
self.bsq.add_query_facet('foo', 'baz')
self.assertEqual(self.bsq.query_facets, [('foo', 'bar'), ('moof', 'baz'), ('foo', 'baz')])
def test_add_narrow_query(self):
self.bsq.add_narrow_query('foo:bar')
self.assertEqual(self.bsq.narrow_queries, set(['foo:bar']))
self.bsq.add_narrow_query('moof:baz')
self.assertEqual(self.bsq.narrow_queries, set(['foo:bar', 'moof:baz']))
def test_set_result_class(self):
# Assert that we're defaulting to ``SearchResult``.
self.assertTrue(issubclass(self.bsq.result_class, SearchResult))
# Custom class.
class IttyBittyResult(object):
pass
self.bsq.set_result_class(IttyBittyResult)
self.assertTrue(issubclass(self.bsq.result_class, IttyBittyResult))
# Reset to default.
self.bsq.set_result_class(None)
self.assertTrue(issubclass(self.bsq.result_class, SearchResult))
def test_run(self):
# Stow.
old_site = haystack.site
test_site = SearchSite()
test_site.register(MockModel)
haystack.site = test_site
msq = MockSearchQuery(backend=MockSearchBackend())
self.assertEqual(len(msq.get_results()), 100)
self.assertEqual(msq.get_results()[0], MOCK_SEARCH_RESULTS[0])
示例3: BaseSearchQueryTestCase
# 需要导入模块: from haystack.backends import BaseSearchQuery [as 别名]
# 或者: from haystack.backends.BaseSearchQuery import add_narrow_query [as 别名]
#.........这里部分代码省略.........
ui = connections['default'].get_unified_index()
bmmsi = BasicMockModelSearchIndex()
ui.build(indexes=[bmmsi])
bmmsi.update()
msq.more_like_this(mock)
self.assertEqual(msq.get_count(), 23)
self.assertEqual(int(msq.get_results()[0].pk), MOCK_SEARCH_RESULTS[0].pk)
def test_add_field_facet(self):
self.bsq.add_field_facet('foo')
self.assertEqual(self.bsq.facets, {'foo': {}})
self.bsq.add_field_facet('bar')
self.assertEqual(self.bsq.facets, {'foo': {}, 'bar': {}})
def test_add_date_facet(self):
self.bsq.add_date_facet('foo', start_date=datetime.date(2009, 2, 25), end_date=datetime.date(2009, 3, 25), gap_by='day')
self.assertEqual(self.bsq.date_facets, {'foo': {'gap_by': 'day', 'start_date': datetime.date(2009, 2, 25), 'end_date': datetime.date(2009, 3, 25), 'gap_amount': 1}})
self.bsq.add_date_facet('bar', start_date=datetime.date(2008, 1, 1), end_date=datetime.date(2009, 12, 1), gap_by='month')
self.assertEqual(self.bsq.date_facets, {'foo': {'gap_by': 'day', 'start_date': datetime.date(2009, 2, 25), 'end_date': datetime.date(2009, 3, 25), 'gap_amount': 1}, 'bar': {'gap_by': 'month', 'start_date': datetime.date(2008, 1, 1), 'end_date': datetime.date(2009, 12, 1), 'gap_amount': 1}})
def test_add_query_facet(self):
self.bsq.add_query_facet('foo', 'bar')
self.assertEqual(self.bsq.query_facets, [('foo', 'bar')])
self.bsq.add_query_facet('moof', 'baz')
self.assertEqual(self.bsq.query_facets, [('foo', 'bar'), ('moof', 'baz')])
self.bsq.add_query_facet('foo', 'baz')
self.assertEqual(self.bsq.query_facets, [('foo', 'bar'), ('moof', 'baz'), ('foo', 'baz')])
def test_add_narrow_query(self):
self.bsq.add_narrow_query('foo:bar')
self.assertEqual(self.bsq.narrow_queries, set(['foo:bar']))
self.bsq.add_narrow_query('moof:baz')
self.assertEqual(self.bsq.narrow_queries, set(['foo:bar', 'moof:baz']))
def test_set_result_class(self):
# Assert that we're defaulting to ``SearchResult``.
self.assertTrue(issubclass(self.bsq.result_class, SearchResult))
# Custom class.
class IttyBittyResult(object):
pass
self.bsq.set_result_class(IttyBittyResult)
self.assertTrue(issubclass(self.bsq.result_class, IttyBittyResult))
# Reset to default.
self.bsq.set_result_class(None)
self.assertTrue(issubclass(self.bsq.result_class, SearchResult))
def test_run(self):
# Stow.
self.old_unified_index = connections['default']._index
self.ui = UnifiedIndex()
self.bmmsi = BasicMockModelSearchIndex()
self.bammsi = BasicAnotherMockModelSearchIndex()
self.ui.build(indexes=[self.bmmsi, self.bammsi])
connections['default']._index = self.ui
# Update the "index".
backend = connections['default'].get_backend()
示例4: BaseSearchQueryTestCase
# 需要导入模块: from haystack.backends import BaseSearchQuery [as 别名]
# 或者: from haystack.backends.BaseSearchQuery import add_narrow_query [as 别名]
#.........这里部分代码省略.........
def test_clear_limits(self):
self.bsq.set_limits(10, 50)
self.assertEqual(self.bsq.start_offset, 10)
self.assertEqual(self.bsq.end_offset, 50)
self.bsq.clear_limits()
self.assertEqual(self.bsq.start_offset, 0)
self.assertEqual(self.bsq.end_offset, None)
def test_add_boost(self):
self.assertEqual(self.bsq.boost, {})
self.bsq.add_boost('foo', 10)
self.assertEqual(self.bsq.boost, {'foo': 10})
def test_add_highlight(self):
self.assertEqual(self.bsq.highlight, False)
self.bsq.add_highlight()
self.assertEqual(self.bsq.highlight, True)
def test_more_like_this(self):
mock = MockModel()
mock.id = 1
msq = MockSearchQuery(backend=MockSearchBackend())
msq.more_like_this(mock)
self.assertEqual(msq.get_count(), 100)
self.assertEqual(msq.get_results()[0], MOCK_SEARCH_RESULTS[0])
def test_add_field_facet(self):
self.bsq.add_field_facet('foo')
self.assertEqual(self.bsq.facets, set(['foo']))
self.bsq.add_field_facet('bar')
self.assertEqual(self.bsq.facets, set(['foo', 'bar']))
def test_add_date_facet(self):
self.bsq.add_date_facet('foo', start_date=datetime.date(2009, 2, 25), end_date=datetime.date(2009, 3, 25), gap_by='day')
self.assertEqual(self.bsq.date_facets, {'foo': {'gap_by': 'day', 'start_date': datetime.date(2009, 2, 25), 'end_date': datetime.date(2009, 3, 25), 'gap_amount': 1}})
self.bsq.add_date_facet('bar', start_date=datetime.date(2008, 1, 1), end_date=datetime.date(2009, 12, 1), gap_by='month')
self.assertEqual(self.bsq.date_facets, {'foo': {'gap_by': 'day', 'start_date': datetime.date(2009, 2, 25), 'end_date': datetime.date(2009, 3, 25), 'gap_amount': 1}, 'bar': {'gap_by': 'month', 'start_date': datetime.date(2008, 1, 1), 'end_date': datetime.date(2009, 12, 1), 'gap_amount': 1}})
def test_add_query_facet(self):
self.bsq.add_query_facet('foo', 'bar')
self.assertEqual(self.bsq.query_facets, {'foo': 'bar'})
self.bsq.add_query_facet('moof', 'baz')
self.assertEqual(self.bsq.query_facets, {'foo': 'bar', 'moof': 'baz'})
def test_add_narrow_query(self):
self.bsq.add_narrow_query('foo:bar')
self.assertEqual(self.bsq.narrow_queries, set(['foo:bar']))
self.bsq.add_narrow_query('moof:baz')
self.assertEqual(self.bsq.narrow_queries, set(['foo:bar', 'moof:baz']))
def test_run(self):
# Stow.
old_site = haystack.site
test_site = SearchSite()
test_site.register(MockModel)
haystack.site = test_site
msq = MockSearchQuery(backend=MockSearchBackend())
self.assertEqual(len(msq.get_results()), 100)
self.assertEqual(msq.get_results()[0], MOCK_SEARCH_RESULTS[0])
# Restore.
haystack.site = old_site
def test_clone(self):
self.bsq.add_filter('foo', 'bar')
self.bsq.add_filter('foo__lt', '10')
self.bsq.add_filter('claris', 'moof', use_not=True)
self.bsq.add_filter('claris', 'moof', use_or=True)
self.bsq.add_order_by('foo')
self.bsq.add_model(MockModel)
self.bsq.add_boost('foo', 2)
self.bsq.add_highlight()
self.bsq.add_field_facet('foo')
self.bsq.add_date_facet('foo', start_date=datetime.date(2009, 1, 1), end_date=datetime.date(2009, 1, 31), gap_by='day')
self.bsq.add_query_facet('foo', 'bar')
self.bsq.add_narrow_query('foo:bar')
clone = self.bsq._clone()
self.assert_(isinstance(clone, BaseSearchQuery))
self.assertEqual(len(clone.query_filters), 4)
self.assertEqual(len(clone.order_by), 1)
self.assertEqual(len(clone.models), 1)
self.assertEqual(len(clone.boost), 1)
self.assertEqual(clone.highlight, True)
self.assertEqual(len(clone.facets), 1)
self.assertEqual(len(clone.date_facets), 1)
self.assertEqual(len(clone.query_facets), 1)
self.assertEqual(len(clone.narrow_queries), 1)
self.assertEqual(clone.start_offset, self.bsq.start_offset)
self.assertEqual(clone.end_offset, self.bsq.end_offset)
self.assertEqual(clone.backend, self.bsq.backend)