我正在使用RethinkDB,并且正在执行“排行榜”功能。每次运行命令时,我都会不断收到该错误。
`Index `coin` was not found on table `test.users` in:
r.table("users").orderBy({
index: r.desc("coin")
}).limit(10)
在您说我是否插入了“硬币”之前,是的,我确实将其插入了
答案 0 :(得分:1)
在“硬币”字段上添加索引
r.table("users").indexCreate("coin")
或者使用不带索引的orderby:
r.table("users").orderBy(r.desc("coin"))...
答案 1 :(得分:0)
indexCreate方法是异步方法。 插入新索引时,您需要通过调用以下命令来验证其插入:
print(r.table(tablename).indexWait(sameIndexName))
该方法的作用类似于“ yield”命令,该命令使数据库停止正在执行的任何操作,并为您创建该索引。打印的结果将包含一个名为ready的属性。如果为“ true”,则可以开始在查询中使用索引。 您可以在这里阅读有关内容:Index Wait RethinkDB Documentation。