elasticsearch - 加入Haystack SearchQuerySets

标签 elasticsearch django-haystack

我正在将Haystack与ElasticSearch一起使用,以搜索我网站上用户的文档。用户彼此“关注”,我希望我关注的用户的匹配文档在其他用户的匹配文档之前显示。在每个类别中,我想根据默认分数将排序留给Haystack。

class DocumentIndex(indexes.SearchIndex, indexes.Indexable):
    text = indexes.CharField(document=True, use_template=True)
    title = indexes.CharField(model_attr="title", boost=3.0)
    follow = indexes.MultiValueField()

def search(self):
    sqs = self.searchqueryset.auto_query(self.cleaned_data['q'])
    friend_results = sqs.filter(friends=self.cleaned_data['username'])
    other_results = sqs.exclude(friends=self.cleaned_data['username'])

    #*****  Can I do something like this?  ****#

    final_query_set = join (friend_results, other_results)

    return final_query_set

谢谢您的帮助。

最佳答案

final_query_set = friend_results | other results

我认为这就是您想要的。

关于elasticsearch - 加入Haystack SearchQuerySets,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17537125/

相关文章:

elasticsearch - 从SQL Server加载数据到Elasticsearch的模式

performance - 端到端测试大数据管道的工具?

elasticsearch - 在哪里使用flush和_flush/synced命令

elasticsearch - 我们如何更改Elasticsearch集群名称的字符长度

python - Django Haystack-Xapian 搜索因特殊字符和空格而失败

python - 如何在Django Oscar中启用多面搜索?

python - Haystack搜索字段错误: The model 'None' combined with model_attr <attr_name> returned None

python - 使用 Django + Celery 更新 Haystack 搜索索引

json - {"error":"MapperParsingException[Malformed content, must start with an object]","status":400}