首页 > 解决方案 > 添加账单并显示“500 内部服务器错误”

问题描述

我正在尝试使用关系 json 客户端对象添加账单,但它显示了一个错误。怎么了?

我尝试使用猫鼬和节点 js 为邮递员添加账单,但它显示了一个错误。

这些是我的模式

客户:

const mongoose = require('mongoose');
const { Schema } = mongoose;

const clientSchema = new Schema({

    name: String,
    mail: String,
    cuil: String,
    phone: Number,
    address: {street: String,
    number: Number,
    floor: String,
    flat: Number
    }    
});
mongoose.model('clients', clienteSchema);

账单:


const mongoose = require('mongoose');
const { Schema } = mongoose;

const billSchema = new Schema({

number: Number,

date: {type: Date, default: Date.now()},

type: String,

local: String,


client: {
    type: mongoose.Schema.Types.ObjectId,
    ref: 'clients',
},

    detail: [{
        quantity: Number,

    product: {code: Number,
               number: String,
               price: Number
        },
        undertotal: Number
    }
    ],
    total: Number

});

mongoose.model('bills', billSchema);

这是我来自 billsController 的发布路线


 app.post('/api/bills', async (req, res) => {


try {
  const client = new Client(req.body.client);
  client = await client.save();
  const bill = new Bill({
    number : req.body.number,
    date : new Date(),
    type : req.body.type,
    local : req.body.local,
    client : client._id,
    detail : req.body.detail,
    total : req.body.total

  });


  const newBill = await bill.save();

  res.status(201).send(newBill);

}catch(err) {
    if (err.name === 'MongoError') {
      res.status(409).send(err.message);
    }

    res.status(500).send(err);
  };
});

在邮递员上,输出是“500 Internal Server Error”并显示一个空数组。

标签: node.jsmongoose

解决方案


推荐阅读