Хочу вернуть прост вернуть определенные объекты из колекции, но это не получается сделать. Делал все как в примере.
Код ошибки:
TypeError: Converting circular structure to JSON
--> starting at object with constructor 'ReplSet'
| property 's' -> object with constructor 'Object'
| property 'coreTopology' -> object with constructor 'ReplSet'
| ...
| property 's' -> object with constructor 'Object'
--- property 'topology' closes the circle
Мой GET метод:
router.get('/assignments', auth.required, function (req, res, next) {
var user = User.findById(req.payload.id);
if (!user) { return res.sendStatus(401); }
var assignments = Assignment.find({ author: user });
return res.json({
assignments: assignments.map(function (assignment) {
return assignment.toJSONFor(user);
})
})
})
Метод формирования JSON в модели Mongoose
AssignmentSchema.methods.toJSONFor = function(user){
return {
slug: this.slug,
publicSlug: this.publicSlug,
title: this.title,
description: this.description,
createdAt: this.createdAt,
updatedAt: this.updatedAt,
attempts: this.attempts,
questions: this.questions,
author: this.author.toProfileJSONFor(user)
}
};
Есть ли у вас какие-нибудь идеи, как можно это упростить или избавиться от ошибки?