搜尋

首頁  >  問答  >  主體

mongodb - 如何根據巢狀的屬性值來尋找(第一層屬性值是陣列)?

範例程式碼如下:

var UserSchema = new Schema({
    interactions: [{
        interactor: {
            type: Schema.Types.ObjectId,
            ref: 'User'
        }
    }]
});

我現在想根據userId匹配所有interactor的值為userId的interaction,用mongoose如何能做到呢?

巴扎黑巴扎黑2765 天前682

全部回覆(1)我來回復

  • 伊谢尔伦

    伊谢尔伦2017-04-24 09:13:50

    匹配的問題我找到了解決方法,非常直觀:

    User.find({
        'interactions.interactor': mongoose.Types.ObjectId(user._id)
    }, function (err, users) {
    }
    

    可是在回呼函數中我會對匹配的多個users做更新,更新完之後該如何保存呢?沒有users.save()這個方法,難道要自己寫loop save?

    回覆
    0
  • 取消回覆