如何在cloudsearch boto3上使用filterQuery和queryOptions

时间:2017-05-30 10:17:21

标签: python python-2.7 boto3 amazon-cloudsearch

我正在尝试使用boto3和cloudsearchdomain,但我在查询中建立一些可选过滤器时遇到了麻烦。这就是我所做的:

response = client.search(
    query=query,
    filterQuery= {'city':city},
    partial=True,
    queryOptions= {'fields':'full_address'},
    queryParser='simple',
    size=size)

根据boto3的文档,filterQuery参数应该是一个字符串,但我不知道它应该具有的结构,我在互联网上什么都没找到。 queryOptions应该是一个JSON,这是我发送的,但我也检索一条错误消息,说它应该是一个字符串

ParamValidationError: Parameter validation failed:
Invalid type for parameter queryOptions, value: {'fields': 'full_address'}, 
type: <type 'dict'>, valid types: <type 'basestring'>
谢谢你, 阿尔瓦罗

1 个答案:

答案 0 :(得分:2)

我终于找到了答案。我在这里发布它,以防它可以帮助其他有类似问题的人:

response = client.search(
    query="myquery",
    queryParser='simple',
    partial=True,
    queryOptions= '{"fields":["full_address"]}',
    filterQuery='city:33044'
    )