【问题标题】:Mongoose get elements in an array after a certain elementMongoose 在某个元素之后获取数组中的元素
【发布时间】:2016-07-03 11:47:37
【问题描述】:

clipsUser 文档中的一个数组。每个clips 元素都有一个_id。我可以按如下方式访问数组:

  User
      .findById(req.user._id)
      .select('clips')
      .exec((err, user) => {
      ...

但是,我不想获取整个 clips 数组。我希望能够在select() 中的某处传递_id,并获取数组中插入在具有所述_id 的元素之后的所有元素。这在猫鼬中是可能的吗?

【问题讨论】:

    标签: javascript node.js mongoose mongoose-schema


    【解决方案1】:

    我想是的!我实际上是通过使用 mongo 查询语言来做这样的事情。尝试做类似的事情

    find({'_id'{$gt:req.user.id}}).

    它应该看起来像这样!

    这应该找到在该 id 之后创建的每个用户 id。

    如果有帮助的话,这里也是关于查询的 mongooose 文档!

    http://mongoosejs.com/docs/queries.html

    【讨论】:

    • 我正在尝试.select('clips').find({ '_id': { '$gt': req.body.clipId } })。然而,它似乎什么也找不到。我可以在select() 之后使用另一个find() 吗?
    • 试试用where方法吧?那么,.where(clips) 然后搜索 $gt?或者也许是美元? docs.mongodb.com/manual/reference/operator/query/in
    猜你喜欢
    • 2020-05-10
    • 2021-07-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-01-03
    • 2011-01-12
    • 2015-07-09
    • 1970-01-01
    相关资源
    最近更新 更多