I am new to ElasticSearch. I am working on a project where I have to search listings which matches the input
http://foo.bar/search?listing=123,456 . I have built an array which key and value are the same and representing the listing ids. I have tried to run the following example but it failed near contains. The script is built for painless language. However, I always get the runtime error.
I cannot get this to work, what could I be doing wrong?
'function_score' => [ 'query' => $query, 'score_mode' => 'sum', 'functions' => [[ 'script_score' => [ 'script' => [ 'params' => ['listing' => [123 => 123, 456 => 456]], 'source' => "(params.listing.contains(doc['id'].value) ? Math.pow(3, 3) : 0)", ], ], ]], ],