验证保存的MongoDB记录

时间:2018-06-29 02:32:42

标签: database mongodb validation promise nosql

我正在研究mongoDB教程,并且指导老师建议我使用以下代码来验证用户在我的数据库中的输入。我已经定义了一个User模型,该模型只接受一个名称,看起来像这样:

it("Can create a subdocument", (done) => {
  const joe = new User({
    name: "joe",
  });

    joe.save()
        .then(() => User.findOne({ name: "joe"}))
        .then((user) => {
            assert(user.name === "joe")
            done();
        });
}

但是,我不明白为什么在这里需要使用User.findOne函数。为什么我们不能只使用:

joe.save().then((user) => {
   assert(user.name === "joe")
   done();
});

感谢您的帮助!

1 个答案:

答案 0 :(得分:1)

如果要验证条目,则意味着需要确保将数据确实正确地插入到db中。如何做到这一点,是在保存后,需要使用findOne直接将数据查找到db,然后验证所获取的数据是否与要插入的数据匹配