ES python dsl, запрос, имя поля из переменной - PullRequest
0 голосов
/ 17 мая 2018

Я используюasticsearch_dsl.Можно ли с помощью Q использовать имя поля из переменной?Я хотел бы, чтобы имя поля topic_18 зависело от переменной.

   b_clause = Q(
                "range",
                topic_18={
                    "lte": 0.3
                }
            )

Примерно так:

field_name = "topic_12"
        clause = Q(
            "range",
            field_name={
                "lte": 0.3
            }
        )

возможно ли это?спасибо!

1 Ответ

0 голосов
/ 17 мая 2018

хорошо, просто вместо Q («диапазон», ... Я сделал JSON, как:

clause = {
            "range": {
              topic_name: {
                expr: val
              }
            }
         }

и позже используйте его в конечном запросе:

Q("bool", must=must_arr)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...