MarkLogic搜索建议结果排除order_date约束名的解决方案问询
MarkLogic建议结果移除
order_date:条目的解决方案 出现该问题的核心原因:MarkLogic搜索建议接口默认会将所有配置的约束名称作为查询语法补全项返回,你配置的default-suggestion-source仅控制建议值的取值范围,不影响约束名本身的补全逻辑。
你可以根据需求选择以下两种解决方案:
方案1:全局关闭所有约束名的建议补全
如果你不需要任何约束名的语法补全提示,直接在搜索options节点下新增suggest-constraints: false配置即可,修改后的配置示例:"options": { "suggest-constraints": false, "default-suggestion-source": { "range": { "type": "xs:string", "field": { "name": "suggestion" } } }, // 其余原有配置保持不变 }改完后接口只会返回你指定的
suggestion字段下的匹配值。方案2:仅关闭
order_date约束的补全提示
如果你需要保留其他约束的补全功能,只屏蔽order_date:条目,就在order_date的约束配置中新增suggest: false属性,示例:{ "name": "order_date", "range": { "type": "xs:dateTime", "facet": false, "suggest": false, "json-property": "order_date", // 原有computed-bucket配置保持不变 } }
你之前添加的suggestion-source配置作用是将指定约束的取值加入建议值来源,和屏蔽约束名补全的逻辑无关,所以不会生效。
内容的提问来源于stack exchange,提问作者Jakub
相关产品推荐
相关产品推荐

