我有2个架构:

用户属性

我想查询属性集合并将用户作为新字段添加到属性文档中(可能通过$ addFields)

properties对象具有与User模式中的_id匹配的userId字符串属性,如何使用聚合或简单查找来执行此操作?

我目前正在这样做:

Property.aggregate([
        { $skip : parseInt(req.query.skip,10) },
        { $limit : parseInt(req.query.limit,10) },
        { $sort : { "address.town": 1, "address.line1": 1 }},
        {
          $lookup: {
              from: "users",
              localField: "userId.str",
              foreignField: "_id.str",
              as: "landlord"
          }
        }
      ]

但这只会返回楼主数组中的所有用户,而不是与user_id和userId字段匹配的用户 .

需要说明的是,Property Schema具有 userId: String 属性 . 我想将其与 Users Schema _id 属性相匹配 .