0

是否有一个简单的钩子可以通过 Django 模型 PK 查找 Haystack 结果?类似的东西(这不起作用)

   SearchQuerySet().filter(pk=12)

另一种方法是我会在模型 pk 的 SearchIndex 中添加一个显式字段,但这似乎很浪费,因为来自 Haystack 的查询集结果包含底层 django 模型 pk

4

2 回答 2

4

以下为我工作:

SearchQuerySet().models(Product).filter(django_id='10229')
于 2013-11-21T20:40:24.307 回答
1

在 Haystack 中,您可能有很多不同的应用程序和模型,因此您还必须为 haystack 查询明确命名它们,因为在内部 Haystack 将创建类似 app.model.pk 的 id ... 例如,您可能在里面有一个应用程序“目录”您有一个模型“产品”并希望过滤 pk=12:

SearchQuerySet().filter(pk='catalog.product.12') 

会成功的。

于 2013-08-19T16:07:25.367 回答