我正在嘗試學習 Painless,以便在嘗試豐富和操作傳入檔案時使用它。但是,我所見過的訪問檔案的每一種方式都只會導致錯誤。在 Kibana 的 Painless Lab 中輸入此內容后,我遇到了以下錯誤:
def paths = new String[3];
paths[0]= '.com';
paths[1] = 'bar.com';
paths[2] = 'foo.bar.com';
doc['my_field'] = paths; // does not work: '[Ljava.lang.String; cannot be cast to org.elasticsearch.index.fielddata.ScriptDocValues'
ctx.my_field = paths; // does not compile: 'cannot resolve symbol [ctx.my_field]'
return doc['my_field'] == 'field_value'; // does not work: 'No field found for [my_field] in mapping'
doc['my_field'] == 'field_value'盡管該欄位存在于測驗檔案中,但仍會抱怨,盡管doc.containsKey('my_field')回傳false.
我應該如何實際訪問和操作傳入的檔案?我正在使用 ElasticSearch 7.12。
uj5u.com熱心網友回復:
您可以使用
在引數選項卡中添加以下內容,我錯過了在答案中添加此內容。這是必需的,因為在實際實作中,您將從背景關系中獲得價值并更新背景關系。
{
"ctx":{
"my_field":["test"]
}
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/437227.html
上一篇:如何創建兩列,其中一列成形?
