有没有办法使用SearchQuerySet并将结果限制为只有特定的索引模型?即如果我向Haystack添加Note和NoteIndex,我可以只提取与Note实例对应的结果吗?
修改
我看了一下,发现有一个名为django_ct的保留字段存储在每个索引模型上。是否可以过滤此字段?它需要什么价值?
DOUBLE EDIT:
没关系。阅读Haystack源代码后,django_ct在内部为“appname.modelname”,可以使用SearchQuerySet.filter进行查询(django_ct ='appname.modelname')
答案 0 :(得分:1)
根据Haystack文档,SearchQueryset对象有一个名为models()的方法,它将结果限制在那些模型中。
e.g。
SearchQuerySet().models(BlogEntry, Comment).filter(content='foo')
如您所见,它使用实际的模型类。我的猜测是,它使用它来查找内容类型以执行过滤。