eqx*_*Dev 7 php elasticsearch laravel
这是在 7.6.2 上工作的,但是自从升级到 7.7 后它就停止工作了,不知道为什么?
我正在使用嵌套或嵌套必须进行查询,因此它必须在三列上为 5 5 5 或 6 6 6。
我正在使用 laravel scout 驱动程序进行弹性搜索 babenkoivan/scout-elasticsearch-driver
谢谢 :)!
"query": {
"bool": {
"must": [
{
"bool": {
"should": [
{
"bool": {
"must": [
[
{
"term": {
"section": "205"
}
},
{
"term": {
"profile": "40"
}
},
{
"term": {
"rim_size": "17"
}
}
]
]
}
}
]
}
},
{
"bool": {
"should": [
[
{
"term": {
"supplier_id": 3
}
}
]
]
}
}
]
}
},
Run Code Online (Sandbox Code Playgroud)
错误:
{
"error":{
"root_cause":[
{
"type":"x_content_parse_exception",
"reason":"[1:106] [bool] failed to parse field [must]"
}
],
"type":"x_content_parse_exception",
"reason":"[1:106] [bool] failed to parse field [must]",
"caused_by":{
"type":"x_content_parse_exception",
"reason":"[1:106] [bool] failed to parse field [should]",
"caused_by":{
"type":"x_content_parse_exception",
"reason":"[1:106] [bool] failed to parse field [must]",
"caused_by":{
"type":"illegal_state_exception",
"reason":"expected value but got [START_ARRAY]"
}
}
}
},
"status":400
}
Run Code Online (Sandbox Code Playgroud)
您的 中有两个嵌套数组bool/must,您需要删除一个:
"must": [
>>> [
{
"term": {
"section": "205"
}
},
{
"term": {
"profile": "40"
}
},
{
"term": {
"rim_size": "17"
}
}
>>> ]
]
Run Code Online (Sandbox Code Playgroud)
它应该看起来像这样:
"must": [
{
"term": {
"section": "205"
}
},
{
"term": {
"profile": "40"
}
},
{
"term": {
"rim_size": "17"
}
}
]
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1249 次 |
| 最近记录: |