问题描述
我需要使用 express 检查一个字段是否唯一(在之前的帖子中没有相同的名称,因此在数据库中目前没有其他名称与此相同)端点内的 Node.js 中的验证器或其他技术(新的,所以我不知道最好的方法)。
我当前的代码是:
MainRouter.post('/animals',[
check('name')
.isAlpha()
.notEmpty()
.withMessage("The name should contain only letters and should be unique."),const errors = validationResult(req);
if (!errors.isEmpty()) {
return res.status(400).send({errors: errors.array()});
}
AnimalPost.postAnimal(req.body).then(message => {
return res.json(message);
}).catch((error) => {
return res.json(404,error);
});
});
例如: 当我发布一个新名称时,例如“ChloeGiraffe”,它应该是唯一的,因为它目前不存在于数据库中,可能如下所示:
- 海豚多莉
- ElephantElle
- MonkeyMitter
- 龟忍者
因此,ChloeGiraffe 已通过验证,可以发布了。否则,如果它已经存在,则会显示错误。
我不知道这是否重要,因为工作是在端点内完成的,但如果重要,我会将所有信息保存在 Excel 工作表中;我不使用 MangoDB。
POST 本身有效,它只是关于唯一性的验证/检查。
我怎样才能做到这一点?如果有错误,请让我知道是否有另一种理想的方法来做到这一点,我找不到关于此方法的任何有用信息。非常感谢您提前!
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)