美文网首页
为模型添加新属性postCount

为模型添加新属性postCount

作者: 黑山老水 | 来源:发表于2017-09-12 09:32 被阅读12次

    更新schema

    打开user.js文件:

    const UserSchema = new Schema({
                                  name: String,
                                  postCount: Number
    });
    

    让每个用户的postCount属性++

    打开update_test.js文件:

    • 初始化为0
    joe = new User({name : 'Joe', postCount : 0});
    
    • 下载数据更新后上传


      数据下载上传的方案

      但是实际情况中,我们要尽量避免服务器直接下载大批数据。


    mongo更新操作

    更好的方案
    { $inc: { <field1>: <amount1>, <field2>: <amount2>, ... } }
    例:
    XXX.update({条件},{$ inc: {属性 : 偏移量}});
    

    所以我们可以使用更新操作语句来完成这个操作:

    it('A user can have their postCount incremented by 1', (done) => {
                User.update(
                            {name : 'Joe'},
                            {$inc :{postCount : 1}}
                )
                .then(() => User.findOne({name : 'Joe'}))
                .then((user) => {
                      assert(user.postCount === 1);
                      done();
                });
    });
    

    相关文章

      网友评论

          本文标题:为模型添加新属性postCount

          本文链接:https://www.haomeiwen.com/subject/pjgqsxtx.html