问题标签 [searchqueryset]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
194 浏览

django-haystack - haystack SearchQueryResult 对象返回多个对象

我不明白为什么 pk=1 的 get() 会导致下面返回多个对象..

get() 返回了多个 MyModel —— 它返回了 4!查找参数为 {'pk': u'1'}

0 投票
1 回答
1058 浏览

python - 如何根据特定模型和 ID 过滤 SearchQuerySet 结果

这是我要搜索的模型

这是视图,我想用它来准备我的结果

我想要的是我的结果基于模型(itemType)和 itemType 的 ID(itemtype_id)。

我不明白如何组合这两个过滤器
谢谢你的帮助

0 投票
1 回答
2475 浏览

python - Django Haystack 字段的不同值

我正在使用 Django Haystack + Elasticsearch + Django REST Framework 构建一个小型搜索引擎,并且我试图找出重现 Django 方法的QuerySet行为distinct

我的索引看起来像这样:

我想做的是以下几点:

但是,HaystackSearchQuerySet没有distinct方法,所以我有点迷茫。我尝试对字段进行分面,然后使用返回的item_id's 列表查询 Django,但这会失去 Elasticsearch 的性能,并且也无法使用 Elasticsearch 的排序功能。

有什么想法吗?

编辑:

示例数据:

示例数据:

如您所见,同一个项目有多个 VendorItem,但是在搜索时我只想为每个项目检索最多一个结果。因此,我需要该item_id列是唯一/不同的。

我尝试在item_id列上进行分面,然后执行以下查询:

这里的主要问题是结果限制为 100 个项目,并且无法使用 haystack 对它们进行排序。

0 投票
1 回答
3225 浏览

django - 如何使用 django-haystack SearchQuerySet 过滤结果?

我正在尝试在我的 Django 应用程序中使用 django-haystack + whoosh。我的索引类看起来像这样

我的模型看起来像这样:

在我的模板中,我使用 ajax 搜索字段来查询文章模型并在同一页面中返回结果。本质上,ajax 会触发一个包含搜索文本到视图的 HttpPost 请求。在视图中,我想获取其抽象字段包含通过 HttpPost 发送的搜索文本的所有 Article 对象。在我看来,我正在获取搜索文本,然后尝试获取类似的模型

但它不返回任何结果。如果我打电话

它将返回本地测试数据库中的 12 个模型对象。但是,过滤器函数不返回任何结果。我想要做的是相当于

有什么建议么?谢谢

0 投票
1 回答
296 浏览

django - 在 Django ORM 中使用 Haystack 结果

我正在使用 Haystack 通过他们的兴趣过滤用户个人资料。如何使用 Haystack 的结果查询模型以返回属于这些用户配置文件的所有选定用户?

现在我正在按照以下方式进行操作,但它真的很慢,因为 haystack_results 可以是数千个条目的列表:

用户和个人资料具有 OneToOne 关系:

你知道更好的方法吗?

感谢您的帮助,马蒂亚斯

0 投票
2 回答
945 浏览

solr - haystack 2 SearchQuerySet,按列表过滤,与精确字符串匹配

如何在 haystack 2.0 中按字符串列表过滤?

在带有 Solr 的 Haystack 1.2 中,如果我有以下代码:

结果将准确返回 my_field 等于“A”、“B”或“C”的对象。相反,在带有 Solr 的 Haystack 2.0 中,我们将获取 my_field 为“A”、“A 某物”、“B”、“B 某物”的对象。我需要保留 haystack 1.2 的行为。任何的想法?

如果我在 Haystack 2.0 中使用:

我将获得 my_field 等于“A”的对象。好的!但是我没有找到一种过滤器的解决方案,其中包含列表中的精确值。

我需要你的帮助。谢谢。

0 投票
1 回答
87 浏览

wordpress - Wordpress 将复杂的搜索查询转换为漂亮的永久链接

我只是想知道是否有办法将 Wordpress 复杂的搜索查询转换为漂亮的永久链接。

据我了解,有一种转换方法:

www.domain.com/?s=keyword 进入 www.domain.com/search/keyword

但是,如果您想将搜索查询复杂如: http://domain.com/?s=+&location=jakarta&radius=1&distance=Miles&slider_search=1&etype=null更改 为 http://domain.com/search/event-jakarta

0 投票
1 回答
459 浏览

django - Django Haystack SearchQuerySet order_by 不返回结果

我让 Haystack 在下面的“旧 urls.py”中工作。当我尝试在模型字段“canonical_school_score”上使用order_by对搜索结果进行排序时,如“New urls.py”中所示,我一直没有得到任何搜索结果。关于我做错了什么有什么建议吗?

0 投票
1 回答
164 浏览

python - Django 中两个 SearchQuerySet 的交集

所以我有一个类似的模型:

我正在尝试查找属于该用户并且名称与搜索词匹配的所有对象。

我已经明白这样做:

不会工作。它返回给我这两者的结合。但是,我想要这两个条件的交集,而不是联合。我知道发生这种情况是因为用户和文本属于不同的模型。

0 投票
1 回答
228 浏览

solr - 导出 Haystack 搜索结果

我正在尝试导出用户搜索的结果。我正在使用 Django + Haystack + Solr 来生成搜索结果。目前,为了创建SearchQuerySet写出 CSV,我将查询参数从搜索结果页面传递到生成 CSV 的视图并在SearchQuerySet那里重建。这是一个真正的痛苦,因为搜索非常复杂,有多个方面、多个模型等,而且当我对SearchForm. 似乎应该有一种简单的方法可以将结果直接传递到导出视图。有什么建议么?

编辑

我想出了自己的解决方案,并将所有修改后的代码放在答案中。请看下文。希望这可以防止其他人将头撞到墙上一周!