【问题标题】:Get all available filters in queryset获取查询集中所有可用的过滤器
【发布时间】:2014-07-06 01:21:44
【问题描述】:

我正在使用弹性搜索和 Django Haystack 构建搜索页面。我想要实现的是在结果页面上显示过滤器表单,但我试图使其更具动态性,所以想知道是否有一种方法可以在查询集上获取所有可能的过滤器,而不管结果属于哪个模块。 (Example for what I am trying to acheive)

我之所以尝试这样做是因为并非所有模型都具有相同的字段。

如果这不是正确的方法,那么我将如何使用良好的实践来构建它。 要么 我是否应该使用 if 条件和一些丑陋的逻辑以手动方式构建它。

谢谢

【问题讨论】:

    标签: python django search elasticsearch django-haystack


    【解决方案1】:

    你研究过刻面吗?

    http://django-haystack.readthedocs.org/en/latest/faceting.html

    它为您提供与用户查询匹配的文档的反馈,您可以从中构建过滤器。

    【讨论】:

    • 刻面用于计数。我怎样才能用它来给我这样的信息?
    • 没错,分面会为您提供计数,但您可以使用分面结果来获取您可以分面的所有过滤器的列表,并使用它来构建您的过滤器页面。
    猜你喜欢
    • 1970-01-01
    • 2018-03-01
    • 1970-01-01
    • 2022-12-05
    • 1970-01-01
    • 2018-09-22
    • 1970-01-01
    • 1970-01-01
    • 2018-11-27
    相关资源
    最近更新 更多