我希望能够连接数据。 这是一个示例:
[ { “ type”:“ pen”, “ color”:“蓝色”, }, { “ type”:“玻璃”, “红色”, }, { “ type”:“ pen”, “ color”:“绿色”, }, { “ type”:“玻璃”, “ color”:“紫”, }, { “ type”:“ pen”, “ color”:“黄色”, }, { “ type”:“玻璃”, “颜色为橙色”, } ]
然后,如果我搜索笔,我将得到3个结果,每种颜色一个结果。 我只想要一个结果。
我尝试使用一个独特的东西,但是阿尔戈利亚独特的东西更像是一个过滤器,而不是一个concat。如果我在属性笔上做一个不同的显示,我将得到一个可能看起来像这样的结果:
{ “ type”:“ pen”, “ color”:“蓝色”, }
我想获得的是:
{ “ type”:“ pen”, “ color_list”:[“蓝色”,“绿色”,“黄色”] }
我在algolia / instant-search文档中找不到类似的内容,所以我想知道如何去做。是否有一个真正的工具可以做到这一点,或者至少有一个可以解决问题的hacky解决方案?
谢谢
答案 0 :(得分:1)
阿尔及利亚不会为您串联,但是通常要做的是让您的记录保存两个信息:
这将导致:
[{'a': 1, 'b': 105, 'c': 20}, {'a': 2, 'b': 99, 'c': 25}]
将[{
"type": "pen",
"color": "red",
"color_list": ["red", "blue", "green"]
},
{
"type": "pen",
"color": "green",
"color_list": ["red", "blue", "green"]
},
...]
设置为可搜索的属性,并使用color
去重复结果;然后,您可以获得与搜索结果非常相关的结果,例如“绿色笔”,它会返回带有distinct
的笔记录(例如,您的产品图片具有正确的颜色),但可以显示颜色所有其他可用颜色的色板。
我希望这会有所帮助! 如果您想更详细地说明用例,请发表评论:)