我正在使用python cloudant库,尝试执行一个查询:
import cloudant
my_database = client['database']
query = cloudant.query.Query(my_database,selector={'selector': {'$gt': 0}},fields=['doi'])
for doc in query(limit=100, skip=100)['docs']:
print doc
这会给我一个错误:HTTPError:400 Client error:Bad Request for url:https://myurl.com/mydatabase/_find
在浏览器中加载页面时出现此错误:
{“error”:“method_not_allowed”,“reason”:“Only POST allowed”}
我错过了什么?
最佳答案
除非在名为selector
的字段上有索引,否则此查询将不起作用。
因此,假设您打算使用_id
字段上的主索引,那么如果您将selector={'selector': {'$gt': 0}}
更改为selector={'_id': {'$gt': 0}}
,那么这个查询应该可以工作。
如所示:
import cloudant
client = cloudant.Cloudant(USER, PWD, account=ACCOUNT)
client.connect()
my_database = client['database']
query = cloudant.query.Query(my_database,selector={'_id': {'$gt': 0}},fields=['doi'])
for doc in query(limit=100, skip=100)['docs']:
print doc
关于python - python-cloudant查询错误,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/35166617/