Проблема в обновлении эластичного поля поиска - PullRequest
0 голосов
/ 07 сентября 2018

Вот так выглядит мой источник результатов.

{"_ source": {"Name": "Где моя корона Angry birds 3", "movie_id": 69}}

Мне нужно обновить поле Имя как «Где моя корона». Я использовал следующий запрос:

{"script": {"inline": "ctx._source.Name = 'Где моя корона'", "lang": "безболезненно"}, "query": {"match": {" movie_id ": 69}}}

Но я получил эту ошибку:

{'type': 'invalid_argument_exception', 'reason': "неожиданный токен ['s'] ожидал один из [{, ';'}]."}

Пожалуйста, помогите мне исправить это.

1 Ответ

0 голосов
/ 07 сентября 2018

Это связано с тем, что в "Где моя корона" есть одиночная кавычка, которая мешает одинарным кавычкам вокруг всей строки.

Попробуйте сделать это следующим образом (используя params):

{  
   "script": {
       "inline": "ctx._source.Name = params.newName",
       "params": {
         "newName": "Where's My Crown"
       },
       "lang": "painless"
   },
   "query": {"match": {"movie_id": 69}}
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...