如何添加单个对象到Django干草堆?

我有一个使用Solr创建的搜索索引。 我想将单个Django对象添加到搜索索引中。

要从solr数据库中删除对象,我们使用remove_object

some = SomFooModel.objects.get(pk=1)
foo = FooIndex()
foo.remove_object(some) #This works

要添加它,有没有像add_object或在这里工作?

我想要的是。

foo.add_object(some). # there is no such thing 

这也是行不通的。 它不会将该对象添加到索引。

foo.update_object(some)

我曾尝试阅读django-haystack文档,但似乎没有任何可能的帮助。


我没有很好地阅读这些文档,结果我搞砸了QuerySet部分。

foo.update_object(some)

上述确实将对象添加到索引。 只是我没有正确地寻找它。 以下列方式删除对象后,我正在搜索该对象。

SearchQuerySet().filter(foo=some.foo)

这总是给一个空的查询集。

SearchQuerySet().models(SomFooModel).filter(foo = some.foo)

这给出了正确的结果。

参考

链接地址: http://www.djcxy.com/p/26837.html

上一篇: How to add individual objects to django haystack?

下一篇: PCRE: backreferences not allowed in lookbehinds?