ブール型のカスタムスクリプトフィールドを追加することは可能ですか?ドキュメントのIDがparamとして送信される配列に存在する場合はtrueを返しますか?このようなparamにIDの有無を確認するElasticsearchカスタムスクリプトフィールド
何かhttps://gist.github.com/2437370
何MVELでこれを行うには正しい方法でしょうか?
更新: Imotovの回答に記載されているように動作するのに問題があります。
マッピング:
並べ替え:
:sort=>{:_script=>{:script=>"return friends_visits_ids.contains(_fields._id.value)", :type=>"string", :params=>{:friends_visits_ids=>["4f8d425366eaa71471000011"]}, :order=>"asc"}}}
place: { properties: { _id: { index: "not_analyzed", store: "yes" }, } }
私はすべてのエラーを取得しない、文書だけでソートされた権利を得ることはありません。
アップデート2
ああ、私は書類上でこの背中を得るか:
"sort"=>["false"]
あなたの答えはありがたいですが、このエラーが発生しました: '' 'クエリの失敗[メインクエリの実行に失敗しました]];ネストされた:PropertyAccessException [[エラー:メソッドを解決することができません:java.util.ArrayList.containsKey() '' 'EDIT:NVM、まだ配列としてそれを持っていた。 – Yeggeps
配列が十分小さい場合は、配列を使用できます。 containsKey()をcontains()に置き換えるだけで済みます。 – imotov
何が十分に小さいでしょうか? <50? – Yeggeps