我有一个后端与Node-Mongoose。我有一个模式“客户”与一些领域(如名称和头像)。我有一个创建新客户的功能。一切正常。现在我需要创建许多客户,我通过发送一个对象数组作为req.body而不是一个单独的对象来实现这一点。
我能够做到这一点,但如果任何对象有一个验证错误(没有有效的电子邮件或名称),它不会存储在数据库中。然而,那些没问题的,确实被储存起来了。
问题是:在创建任何文档之前,我需要验证整个对象数组。如果任何对象无效,则不应创建任何对象。
我一直在寻找,但我什么也找不到。有什么帮助吗?
我原来的功能很简单:
exports.createCustomer = catchAsync(async (req, res, next) => {
const newCustomer = await Customer.create(req.body)
if (!newCustomer) return next(new AppError('The customer could not be created', 404))
res.status(201).json({
status: 'success',
data: {
newCustomer
}
})
字符串
})
1条答案
按热度按时间pokxtpni1#
我写了一个例子来解决你的问题,假设要验证电子邮件地址的长度是正确的。
个字符