假设我在 Django 实现中有以下模型:
class Broadcast(models.Model):
broadcast_date = models.DateField()
...
在我的 haystack/Solr 驱动的搜索结果中,我希望能够仅按广播年份而不是确切日期进行分面。
我可以为此创建一个新的模型属性,但似乎我应该能够以某种方式在 search_indexes 模型定义中执行此操作。这是我目前在 search_indexes.py 中的内容,仅按完整日期显示:
class BroadcastIndex(indexes.SearchIndex, indexes.Indexable):
text = [...]
broadcast_date = indexes.DateField(model_attr="broadcast_date", faceted=True)
有什么想法吗?
请您参考如下方法:
您应该能够使用 date_facet() .如果将它的 gap_by 参数设置为 year,它将按年份分面。
