gpt4 book ai didi

node.js - Nodejs/ Mongoose 。哪种方法更适合创建文档?

转载 作者:IT老高 更新时间:2023-10-28 21:55:32 26 4
gpt4 key购买 nike

当我使用 mongoose 时,我发现了两种在 nodejs 中创建新文档的方法。

第一:

var instance = new MyModel();
instance.key = 'hello';
instance.save(function (err) {
//
});

第二

MyModel.create({key: 'hello'}, function (err) {
//
});

有什么不同吗?

最佳答案

是的,主要区别在于能够在保存之前进行计算,或者作为对构建新模型时出现的信息的 react 。最常见的示例是在尝试保存模型之前确保模型有效。其他一些示例可能是在保存之前创建任何缺失的关系、需要根据其他属性动态计算的值以及需要存在但可能永远不会保存到数据库中的模型(中止的事务)。

因此,作为您可以做的一些事情的基本示例:

var instance = new MyModel();

// Validating
assert(!instance.errors.length);

// Attributes dependent on other fields
instance.foo = (instance.bar) ? 'bar' : 'foo';

// Create missing associations
AuthorModel.find({ name: 'Johnny McAwesome' }, function (err, docs) {
if (!docs.length) {
// ... Create the missing object
}
});

// Ditch the model on abort without hitting the database.
if(abort) {
delete instance;
}

instance.save(function (err) {
//
});

关于node.js - Nodejs/ Mongoose 。哪种方法更适合创建文档?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9305987/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com