我遵循 http://docs.mongodb.org/manual/reference/method/db.collection.insert/
的约定,
在一次 RMongo::dbInsertDocument 调用中发送一批多个文档。
data=data.frame(A=c(1,2),B=c(3,4))
L=lapply(split(data,rownames(data)),as.list)
names(L)=NULL
dataJSON = toJSON(L)
cat(dataJSON)
这给出了以下结果:
[
{
"A":1,
"B":3
},
{
"A":2,
"B":4
}
]
然后
dbInsertDocument(rmongo.object=myRmongo.object, collection=myCollection, doc=dataJSON)
返回以下错误:
Error in ls(envir = envir, all.names = private) :
invalid 'envir' argument
请注意,如果我更换
L = L[[1]
然后
cat(dataJSON)
给出以下结果:
{
"A":1,
"B":3
}
并且对 dbInsertDocument 的相同调用没有错误(并且数据确实已发送到数据库)