Вы можете сделать это, используя конвейер агрегации, но это боль, чтобы написать его самостоятельно.
Вы можете использовать mongo-join-query
, чтобы автоматически создать конвейер агрегации из вашего запроса.
Так будет выглядеть ваш запрос:
const mongoose = require("mongoose");
const joinQuery = require("mongo-join-query");
joinQuery(
mongoose.models.Comment,
{
find: { pid:444 },
populate: ["uid"]
},
(err, res) => (err ? console.log("Error:", err) : console.log("Success:", res.results))
);
Ваш результат будет иметь пользовательский объект в поле uid
, и вы можете связать столько уровней, сколько хотите. Вы можете заполнить ссылку на пользователя, которая ссылается на команду, которая ссылается на что-то еще и т. Д.
Отказ от ответственности: я написал mongo-join-query
для решения этой точной проблемы.
( Сопровождающий Spyder здесь ) Чтобы получить то, что вам нужно, вам нужны две вещи:
Удалите или прокомментируйте эту строку в своем коде
matplotlib.use('Agg')
Вам необходимо перейти к этому пункту меню в Spyder
Tools > Preferences > IPython console > Graphics > Graphics backend
изменить параметр с именем Backend
с Inline
на Automatic
, и затем перезапустите Spyder.