Я хотел бы сохранить объект из одной схемы в массив в другой. У меня есть схема пользователя и схема событий. В пользовательской схеме есть, например, свойство «join», которое является массивом. При подаче запроса на запрос собрание должно быть перенесено в «объединенный» массив.Пропустить объект модели для запроса мангуста
На данный момент у меня есть этот код на стороне клиента:
<div ng-repeat="event in events">
...
<button ng-click="joinEvent(event)">Join</button>
</div>
$scope.joinEvent = function(event){
$http.put('/join', event)
.success(function (data) {
$scope.users = data;
})
.error(function (data) {
console.log('Error: ' + data);
})
};
и это это в express.js маршрутов:
app.put('/join', function (req, res){
var user = req.user; // logged in user
var id = req.user._id;
var update = { $addToSet: {joined: req.event} };
User.findByIdAndUpdate(id, update, {upsert: true}, function (err, user) {
if (!err) {
console.log("joined");
//return all users from db
User.find(function(err, users) {
if (err)
res.send(err)
res.json(users);
});
} else {
if(err.name == 'ValidationError') {
res.statusCode = 400;
res.send({ error: 'Validation error' });
} else {
res.statusCode = 500;
res.send({ error: 'Server error' });
}
console.log('Internal error(%d): %s',res.statusCode,err.message);
}
});
});
В конце концов, я вижу 'нуль' в user.joined. Что случилось с моим подходом?