Как я могу отфильтровать документы mongodb, сохраненные с помощью флажков? - PullRequest
0 голосов
/ 18 апреля 2019

Я создаю приложение, используя node.js MongoDB и Express.У меня есть коллекция, в которой указаны страны и способы внесения депозита.Прямо сейчас я ввожу данные, используя флажки, когда имя «страна [страна]», а [страна] представляет собой цикл массива с именем страна со всем миром.то же самое для вариантов депозита.

, и результат выглядит следующим образом:

{ "_id" : 
ObjectId("), 
"country" : [ { "Germany" : "on" , "France" : "on, etc} ],
"deposit" : [ { "paypal" : "on", "visa" : "on" etc } ],
   }, 
"__v" : 0 }

В конечном итоге мне нужно, чтобы кто-то смог использовать фильтры для выбора нескольких стран, варианты депозита и другие вещи для фильтрации результатов.

До сих пор мне удавалось использовать / location? Country = Germany & dm = paypal

router.get("/location", function(req, res) {
  var country = req.query.country;
  var depositMethod = req.query.dm;

if (country === undefined) {
    country = ''
  } else {
   country = 'country.'+country;
  };

  // check if there is deposit query
    if (depositMethod === undefined) {
    depositMethod = ''
  } else {
    depositMethod = 'deposit.'+depositMethod;
  };


db.casinos.find( { $and: [ { [country] :"on" }, { [depositMethod] :"on" } ] } )

Чтобы найти документы с обоими запросами, также удалось получить каждый из них отдельно, используя $ или.

Что мне действительно нужно, так это уметь делать и то, и другое, а также уметь масштабировать страны и методы депозита для множества других вариантов, цен или чего-либо еще ...

без написания десятков маршрутов.

Надеюсь, что кто-то может помочь.

И извините, если этот вопрос уже задавался, я изо всех сил пытался найти ответ, прежде чем задавать этот вопрос

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...