用值null / undefined替换req.body中的空字符串”“>

问题描述 投票:1回答:1

当req.body包含键值为“”时,我想将空字符串更改为undefined或null。

我已经在Google上搜索了很长时间了,由于我是一个业余爱好者,所以我可能会以错误的方式对其进行研究,但是我只能找到如何验证输入是否为空字符串。问题是我不想在数据库中保存空字符串,但是这些字段不是必需的,因此此处的验证无济于事。

我知道解决此问题的一种方法是通过req.body JSON并在保存之前更改值,但这听起来并不是最好的方法。

可以用猫鼬做吗?

const car = new CarSchema()
Object.assign(car, req.body) //same time replace '' -> undefined
car.save()

当req.body包含值为“”的键时,我想将空字符串更改为undefined或null。我已经在Google上搜索了很长时间,可能因为我是...

node.js mongodb mongoose
1个回答
0
投票

从现有文档中删除或转换这些属性的最佳方法,将其设置为undefined以便在文档中删除此键,或者在保存文档之前,如果值是"",则将其设置为null:

user.first_name = user.first_name ? user.first_name : undefined;
user.signup_date = user.signup_date ? user.signup_date : undefined;
user.save();
© www.soinside.com 2019 - 2024. All rights reserved.