在 r shiny 中使用动态数组进行 m​​ongolite 过滤

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)