0

我正在使用 Python 驱动程序运行 RethinkDB。

蟒蛇请求:

response = r.db("user_data_sets").table("indexes").get_all(r.args(['key1', 'key2'])).run()

此请求仅返回 中的key2记录response

> len(response.items)
> result = int(1)

如果我在Data Explorer中运行查询,我会得到两条记录。

数据浏览器测试请求:

r.db("user_data_sets").table("indexes").getAll(r.args(['key1', 'key2']))

2 rows returned. Displaying rows 1-2

我在这里有点不知所措。不确定这是驱动程序错误/问题,还是语法怪癖,还是完全其他原因。谷歌没有产生任何有见地的东西。

4

1 回答 1

1

我刚刚对此进行了测试并得到了正确的结果:

重新思考数据库版本:

rethinkdb 2.3.4 (CLANG 7.3.0 (clang-703.0.31))

RethinkDB Python 模块:

rethinkdb==2.1.0.post2

这是我的 Python 代码:

r.db("test").table("so1").insert({"id":1}).run(conn)
r.db("test").table("so1").insert({"id":2}).run(conn)
list(r.db("test").table("so1").get_all(r.args([1, 2])).run(conn))
# [{'id': 2}, {'id': 1}]

以及 WebUI 中的结果

示例图像

如果您创建一个全新的表,并且只需插入这两个文档。结果是一样的吗?

于 2016-07-08T21:17:49.703 回答