如何在Express中更新用户资料?

时间:2020-10-20 06:34:23

标签: node.js express mongoose

我想更新特定用户的财务记录,该记录是一个数组。

<-这是我的用户模型->

const FinanceSchema = new mongoose.Schema({
  moneyToBePaid: {
    type: Number,
  },

  moneyPaid: {
    type: Number,
  },

  moneyToBeReceived: {
    type: Number,
  },

  moneyReceived: {
    type: Number,
  },
});
const UserSchema = new mongoose.Schema({
  financialInformation: [FinanceSchema],
});

module.exports = mongoose.model("user", UserSchema);

<-这是我的帖子路线->

router.post("/users/:id/profile", async (req, res) => {
  const _id = req.params.id;
  const {
    moneyToBePaid,
    moneyPaid,
    moneyToBeReceived,
    moneyReceived,
  } = req.body;
  const finance = {
    moneyToBePaid,
    moneyPaid,
    moneyToBeReceived,
    moneyReceived,
  };
  try {
    const user = await User.findById(_id);
    user.financialInformation.push(finance);
    await user.save();
    res.status(200).json(user);
  }

<-这是我的更新路线->

router.patch("/users/:user_id/profile/:profile_id", async (req, res) => {
  const user_id=req.params.user_id;
  const profile_id=req.params.profile_id;
  try {
    
    
  } 

我很困惑如何更新特定用户的特定财务记录。

1 个答案:

答案 0 :(得分:0)

假设您要更新特定财务数组元素的moneyPaid属性:

connectionLost