【问题标题】:remove value from mongoDB array从 mongoDB 数组中删除值
【发布时间】:2016-04-06 22:54:30
【问题描述】:

嗨,我正在尝试从 mongoDB 中删除一个值,但代码不是删除特定值,而是从架构中删除所有用户,哈哈。

var mongoose = require('mongoose');
var User = require('../../models/UserModel');

module.exports.unfollow = function(req, res){

    var thefollowee = req.body.followee;
    var thefollower = req.body.follower;


    User.find({_id: thefollower}).remove({following: thefollowee}).exec();

    User.find({_id: thefollowee}).remove({followers: thefollower}).exec();

    res.json({ message: 'Unfollowed'});




};

followee 指向被关注者的 id, follower指向的是关注followee的用户的id。

【问题讨论】:

  • 我刚刚看到你的答案弹出来了,不过你也可以使用猫鼬的findOneAndRemove 方法。

标签: mongodb express mongoose stack mean


【解决方案1】:

好的,我通过 $pull 方法得到了它

var mongoose = require('mongoose');
var User = require('../../models/UserModel');

module.exports.unfollow = function(req, res){

    var thefollowee = req.body.followee;
    var thefollower = req.body.follower;


        User.findByIdAndUpdate(thefollowee, { $pull: { followers: req.body.follower }}, function (err, user) {

            if (err)

            return handleError(err);

        });

        User.findByIdAndUpdate(thefollower, { $pull: { following: req.body.followee }}, function (err, user) {

            if (err)

            return handleError(err);

        });

    res.json({ message: 'Unfollowed'});




};

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-06-12
    • 2013-06-08
    • 2013-03-16
    • 2021-04-01
    • 2017-12-22
    • 2015-08-29
    相关资源
    最近更新 更多