Доктрина MongoDB запрашивает встроенные документы - PullRequest
3 голосов
/ 15 июля 2011

У меня есть документ верхнего уровня Пользователь со встроенными ключевыми словами (пользовательское ключевое слово EmbedMany).Ну, я не знаю, как получить объект Keyword от конкретного пользователя по его идентификатору. Я потратил много времени, пытаясь решить эту проблему, но это все еще остается проблемой для меня.Так что я помогаю кому-то здесь, поможет мне.Большое спасибо.

1 Ответ

2 голосов
/ 15 июля 2011

Вы можете загрузить только родительский документ из mongodb.Но есть оператор $ slice , который может загружать родительский документ только с ограниченным количеством встроенных документов.

На родном языке mongodb вы можете сделать это так:

db.users.find({_id: "UserId", "Keywords._id", "keywordId"},
               {Keywords:{$slice: 1}}) // first matched by id keyword

Из доктрины вы получите пользовательский документ только с одним встроенным ключевым словом.

Надеюсь, это поможет.

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