Skip to main content
 首页 » 编程设计

python之Django Haystack之方面是否限于 10

2024年08月30日29linjiqin

我正在为一个产品列表编制索引,每个产品都有一个类别列表。类别大约有 1000 个。

在搜索页面中,我想列出所有有超过 1 个结果的类别。


我正在收集方面:

results.facet_counts() 

不幸的是,这只会返回前 10 个类别!

我似乎找不到让它返回更多的方法。


我使用的是最新版本的 Haystack 和 ElasticSearch。


希望有人能帮忙! :)

请您参考如下方法:

您可以在 json 查询中指定分面的大小,即您将返回的条目数:

{ 
    "query" : { 
        "match_all" : {  } 
    }, 
    "facets" : { 
        "tag" : { 
            "terms" : { 
                "field" : "tag", 
                "size" : 10 
            } 
        } 
    } 
} 

如果要返回所有条目,则需要配置一个高值。 不确定如何将此参数添加到您正在使用的库中。希望答案无论如何都会有用。