3

我有下面的代码,为什么它不起作用?谢谢。

library(mongolite)
library(jsonlite)

id <- c('35325073','35325078')

id_list_JSON <- toJSON(id)

test3 <- m1$find('{"_id": {"$in": id_list_JSON}}', fields = '{"_id" : 1, "f.fid" : 1, "ud" : 1}')

错误:无效的 JSON 对象:{"_id": {"$in": id_list_JSON}}

4

1 回答 1

4

@Marc B 是正确的,因为您必须构建字符串才能使用id_list_JSON.

在 R 中,您可以使用它paste0来执行此操作

test3 <- m1$find(paste0('{"_id": {"$in": ', id_list_JSON, '}}'), 
                 fields = '{"_id" : 1, "f.fid" : 1, "ud" : 1}')

paste0线路给出的地方

paste0('{"_id": {"$in": ', id_list_JSON, '}}')

# "{\"_id\": {\"$in\": [\"35325073\",\"35325078\"]}}"

然后应该在您的查询中工作。

于 2016-10-30T22:03:11.097 回答