在 r shiny 中使用动态数组进行 mongolite 过滤
mongolite filtering with dynamic array in r shiny
我有一个包含多个选项的 select 输入和我的 Mongo 查询
这里是数组如果元素:
c<- c("elen","shallen")
query1 <- paste0('{"client": {"$in"["',c,'"]}')
#sales info is the data base
salesinfo$find(fields = '{"store":true,"_id":false}',query = query1)
Error: Invalid JSON object: {"client": [ elen ]}{"client": [ shallen ]}
这不起作用请帮助我请记住它是一个动态数组,值会改变
经过广泛的研究,我找到了解决问题的方法,希望我的解决方案能帮助像我这样的人。
q1=paste(shQuote(c, type="cmd"), collapse=", ")
这一步是为了确保将数组打印为字符串,然后使用查询
query =paste0('{"store":{"$in":[',q1,']}}')
下一步将把它合并到查询中
salesinfo$find(fields = '{"store":true,"_id":false}',query = query)
我有一个包含多个选项的 select 输入和我的 Mongo 查询
这里是数组如果元素:
c<- c("elen","shallen")
query1 <- paste0('{"client": {"$in"["',c,'"]}')
#sales info is the data base
salesinfo$find(fields = '{"store":true,"_id":false}',query = query1)
Error: Invalid JSON object: {"client": [ elen ]}{"client": [ shallen ]}
这不起作用请帮助我请记住它是一个动态数组,值会改变
经过广泛的研究,我找到了解决问题的方法,希望我的解决方案能帮助像我这样的人。
q1=paste(shQuote(c, type="cmd"), collapse=", ")
这一步是为了确保将数组打印为字符串,然后使用查询
query =paste0('{"store":{"$in":[',q1,']}}')
下一步将把它合并到查询中
salesinfo$find(fields = '{"store":true,"_id":false}',query = query)