Пн goose Найти запрос после заполнения - PullRequest
0 голосов
/ 07 марта 2020

Я пытаюсь найти запрос после заполнения. У меня есть книга и автор модели. В доступе к данным я отправил год на запрос book.find (). Я заполняю автора в книге, но я не могу получить ответ, поскольку послал годы. Все коллекции книг возвращаются обратно. Но ответом должны быть книги и в представленных книгах год и автор должны быть заполнены.

Модель книги такая:

const Book = новая схема ({авторы: [{type: Schema.Types .ObjectId, ref: 'Author'}] и другие поля ...)};

Авторская модель выглядит так:

const Author = новая схема ({year: {type: Number) } и другие поля ...)};

Я пытался так:

find.book({})
.populate({
        path: 'authors',
        match: {
           year: $in { years }
        }
     });

Также я пытался так:

find.book({})
.populate('authors', null, { year: $in { years } });

они не работают что я хочу.

Мне нужен ответ, например, такой:

{
book{
authors:[
 {
 _id: "Author A,
 year: 1990,
 },
 {
 _id: "Author B",
 year: 1990,
 }
],
...another fields of book
 }
}

Что мне делать?

...