Node.js 如何删除MongoDB属性中的元素';MongooseJS的数组?
我无法删除作为MongoDB模型属性的数组中的元素。 请记住,这是一个NodeJS模块mongooseJS,而不是真正的MongoDB,因此功能不同 目标:从statusLiked数组中删除对象我还确认status.id的值是正确的。 型号:Node.js 如何删除MongoDB属性中的元素';MongooseJS的数组?,node.js,mongodb,mongoose,mongoose-schema,Node.js,Mongodb,Mongoose,Mongoose Schema,我无法删除作为MongoDB模型属性的数组中的元素。 请记住,这是一个NodeJS模块mongooseJS,而不是真正的MongoDB,因此功能不同 目标:从statusLiked数组中删除对象我还确认status.id的值是正确的。 型号: Const userSchema = new mongoose.Schema({ myStatus: Array, statusLiked: Array, )}; 删除: 1.删除状态(工作)。2.从User.statusLiked(无工作)
Const userSchema = new mongoose.Schema({
myStatus: Array,
statusLiked: Array,
)};
删除:
1.删除状态(工作)。2.从User.statusLiked(无工作)中删除状态
发生的情况:从数据库中删除特定状态(对象)。但状态仍保留在User.statuslike数组中
我希望发生的事情:要从User.statuslike数组中删除的状态以及要从数据库中删除的状态。然后,重新加载页面并显示通知。我不知怎么让它工作了。工作代码:
exports.deleteStatus = (req, res, next) => {
var CurrUser = req.body.userid;
var CurrentPost = req.body.post;
Status.remove({ _id: CurrentPost }, (err) => {
if (err) { return next(err); }
console.log('meeee'+CurrentPost+'user: ' +CurrUser);
req.flash('success', { msg: 'Status deleted.' });
res.redirect('/');
});
User.update(
{ _id: new ObjectId(CurrUser)},
{ $pull: { myStatus : { _id : new ObjectId(CurrentPost) } } },
{ safe: true },
function (err, obj) {
console.log(err || obj);
});
};
exports.deleteStatus = (req, res, next) => {
var CurrUser = req.body.userid;
var CurrentPost = req.body.post;
Status.remove({ _id: CurrentPost }, (err) => {
if (err) { return next(err); }
console.log('meeee'+CurrentPost+'user: ' +CurrUser);
req.flash('success', { msg: 'Status deleted.' });
res.redirect('/');
});
User.update(
{ _id: new ObjectId(CurrUser)},
{ $pull: { myStatus : { _id : new ObjectId(CurrentPost) } } },
{ safe: true },
function (err, obj) {
console.log(err || obj);
});
};