Python elasticsearch-dsl 多字段排序

Python elasticsearch-dsl sorting with multiple fields

我正在尝试使用 elasticsearch-dsl 构建排序命令。但是我无法以正确的格式传递变量。

格式应该是

s=Search()
s = s.sort({"time":{"order":"asc"}}, {"anoter_field":{"order":"desc"}})
s.execute()

问题是我试图将 {"time":{"order":"asc"}}, {"anoter_field":{"order":"desc"}} 作为一个变量,但我似乎无法以正确的语法获得它。我尝试使用字典、列表和字符串,none 似乎有效。

我的输入是一个看起来像

的字典
input = {"time":"asc", "another_field":"desc"}
data_input = {"time":"asc", "another_field":"desc"}
args = [{k:{'order':v}} for k,v in data_input.items()]
s.sort(*args)

我猜你问的是什么?很难说...