Используйте фильтр в функции Mon goose JS find (), которая включает объект - PullRequest
0 голосов
/ 11 апреля 2020

Моя модель выглядит так:

  {
    visibleIn: { order: false, showcase: true, search: true },
    _id: qijjdjrby0ytnaznj2dk,
    name: 'iPhone 7 + Black, Grey, or Rose-Gold',
    __v: 0
  }

Я назвал эту модель Product, поэтому const Product = require('../path/to/file'). Я пытаюсь найти все продукты, которые имеют order из true, когда я использую метод find(). Я думал, что-то вроде этого будет работать:

Product.find({visibleIn.order: true});

Результатов Unexpected token '.' ошибка

или

Product.find({visibleIn: {order: true}});

Результатов в пустой массив []

Так как мне использовать фильтр, если он находится внутри другого объекта?

Ответы [ 2 ]

1 голос
/ 11 апреля 2020
Product.find({visibleIn.order: true});

ты пробовал это? Вы можете использовать это для фильтрации вашей БД

0 голосов
/ 14 апреля 2020

Спасибо nax3t за ответ на мой вопрос (но сделал это в комментарии, так что не звоните мне за ответ на вопрос). Вместо

Product.find({visibleIn.order: true}); 

мне нужно использовать

Product.find({'visibleIn.order': true});

Это потому, что Mon goose передает аргументы объекта себе.

...