sql >> Database teknologi >  >> NoSQL >> MongoDB

Find at bruge _id, der ikke fungerer med aggregering

Mongoose kaster ikke String til ObjectId i aggregeret funktion. Så du skal støbe den manuelt ved at bruge mongoose.

var mongoose = require('mongoose')

const existedRelation = await this.model.aggregate([
  { "$match": { "_id": mongoose.Types.ObjectId(firstId) } },
  { "$project": {
    "relations": {
      "$filter": {
        "input": "$links",
        "as": "link",
        "cond": {
          "$and": [
            { "$eq": ["$$link.target.entityId", `${objectIdValue}`] },
            { "$eq": ["$$link.linkTypeId", linkTypeId] }
          ]
        }
      }
    }
  }}
])



  1. Laravel 4 :Kald til udefineret metode Redis::connection()

  2. Sådan slutter du dig til flere samlinger med $lookup i mongodb

  3. Meteor.js implementere til example.com eller www.example.com?

  4. Hvordan deaktiverer man mongoDB java-driverlogning?