sql >> Databasteknik >  >> NoSQL >> MongoDB

MongoDB:$lookup returnerar tom array

Mongoose pluralisera samlingens namn vid tidpunkten för skapandet. Så istället för schedule du bör använda schedules

{ "$lookup": {
  "from": "schedules",
  "localField": "_id.id",
  "foreignField": "customer.id",
  "as": "user_detail"
}}

eller antingen importera samlingen och extrahera samlingens namn från den

const Schedule = require('/schedules')

{ "$lookup": {
  "from": Schedule.collection.name,
  "localField": "_id.phone",
  "foreignField": "customer.phone",
  "as": "user_detail"
}}



  1. Mongoose valda fält (kapslade)

  2. MongoDB findOne()

  3. Mongo ObjectIDs:Säker att använda i naturen?

  4. Mongoose Promise med blåsångare och maskinskriven