我正在尝试使用下面的胡子模板将整数数组传递给ElasticSearch模板。
{{#filter5_terms}}
"terms": {
"{{filter5_name}}": [
"{{#filter5_lt}}",
"{{.}}",
"{{/filter5_lt}}" ]
}
{{/filter5_terms}}
上面的工作,如果我传递一个字符串数组(例如:[" A"," B"]。但同样的情况是使用int数组[1,2]失败嵌套:NumberFormatException [对于输入字符串:""];错误。
如果我遗失任何东西,你可以告诉我吗?
由于 阿尼尔
答案 0 :(得分:1)
我确实解决了这个问题。 我们可以使用下面的代码将整数数组替换为ElasticSearch查询。
"terms": {
"{{filter5_name}}": {{filter5_lt}}
}
ElasticSearch文档有一个替换字符串数组的例子,我试图对整数数组使用相同的字符串并且它不起作用。
所以我必须使用Mustache模板示例中提供的上述内容。
由于 阿尼尔
答案 1 :(得分:1)
你真的不应该依赖它,因为格式是Mustache的内部实现,因此可能会发生变化。例如,如果您尝试使用mustache.js模拟它,那么您将获得以下内容:
"terms: {
"property": 3,4
}
要解决此问题,您应该为模板化值添加方括号。所以,你的例子变成了:
"terms": {
"{{filter5_name}}": [{{filter5_lt}}]
}
这样可以得到你想要的东西。
至少,在mustache.js 2.2.1
中也是如此