R -Как передать значение в монгольском запросе

Я использую пакет mongolite для подключения и извлечения данных из MongoDB. Как передать значение в запросе поиска mongolite

##connecting mongodb

library(mongolite)

mongo<-mongolite::mongo(collection = "Sample", db = "Test", url = 
                          "mongodb://User:123@Wyyuyu:13333/ty2_U",verbose = TRUE)

## getting all data from collection data from collection below query is working fine.

values <- mongo$find()

## But I want to filter specific value by passing value.

 for(i in c("process","check","queue"))
{    

   values <- mongo$find('{"field" : i}',)
}

если я попробовал код выше, я получаю проблемы ниже. пожалуйста, помогите мне решить

Error: Invalid JSON object: {"field" : i}

1 ответ

Решение

Учитывая ваш i переменная, вам нужно создать строку, используя что-то вроде paste0:

values <- mongo$find(paste0('{"field" : ', i, '}') )

но вместо цикла вы также можете использовать

values <- mongo$find('{"field" : { "$in" : [ "process", "check", "queue" ] } }')
Другие вопросы по тегам