亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

推送到 Mongoose 子文檔

推送到 Mongoose 子文檔

慕容森 2022-11-03 09:55:49
您好,我正在創建一系列分組來描述某些用戶在幫助客戶的背景下所扮演的角色。Prospect 模型中的對象稱為個案工作者。在 caseworkers 中是一系列數組,用于完成不同類型的角色。等式是允許用戶將他的信息作為稱為 CaseWorker 的子文檔推送。基本上創建一個用戶可以推送到的具有 6 個數組的對象。我嘗試了一些事情并選擇了子文檔。任何幫助都是極好的。這是我的代碼:const mongoose = require("mongoose");const CaseWorker = require("./CaseWorker");const ProspectSchema = mongoose.Schema({  caseWorkers: {    originators: [CaseWorker.schema],    loanProcessors: [CaseWorker.schema],    documentProcessors: [CaseWorker.schema],    upsells: [CaseWorker.schema],    primaryReso: [CaseWorker.schema],    taxPreparers: [CaseWorker.schema],    secondaryReso: [CaseWorker.schema],  }module.exports = mongoose.model("prospect", ProspectSchema);const mongoose = require("mongoose");const Schema = mongoose.Schema;const CaseWorkerSchema = new Schema({  name: {    type: String,    required: true,  },  email: {    type: String,    required: true,    unique: true,  },  role: { type: String },  resoCred1: { type: String },  resoCred2: { type: String },  reminders: [    {      _id: { type: mongoose.Schema.Types.ObjectId, ref: "User" },      userReminded: { type: mongoose.Schema.Types.ObjectId },      reminderDate: { type: Date },      reminderDueDate: { type: Date },      status: { type: String },      daysTilDue: { type: Number },      id: { type: String },      text: { type: String },      clientId: { type: mongoose.Schema.Types.ObjectId, ref: "Prospect" },    },  ],});module.exports = mongoose.model("caseWorker", CaseWorkerSchema);router.put("/:_id/caseWorkers/loanProcessors", auth, async (req, res) => {  const prospect = await Prospect.findByIdAndUpdate(req.params._id, {    "$push": {      "loanProcessors": {        "caseWorker": {          "name": req.body.name,          "email": req.body.email,          "role": req.body.role,          "resoCred1": req.body.resoCred1,          "resoCred2": req.body.resoCred2,        },      },    },  });  res.json(prospect);  console.log(prospect);});
查看完整描述

1 回答

?
楊魅力

TA貢獻1811條經驗 獲得超6個贊

在您更新您放置的文檔時的方法中,caseWorker但loanProcessors它在模式中以相反的方式聲明。


要更新嵌套對象,您必須使用點符號來引用該字段。


不要忘記將表示字段的對象鍵放在這樣的字符串"caseWorkers.loanProcessors"中,因為caseWorkers.loanProcessors在 javascript 中是無效的對象鍵


    "$push": {

      "caseWorkers.loanProcessors": {

        "name": req.body.name,

        "email": req.body.email,

        "role": req.body.role,

        "resoCred1": req.body.resoCred1,

        "resoCred2": req.body.resoCred2,

      },

    },


查看完整回答
反對 回復 2022-11-03
  • 1 回答
  • 0 關注
  • 236 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號