为什么在不同的模型文件中使用model.export?
关于拆分模型数据的问题,看一些Stackoverflow的答案,我看到两种不同的格式。 见下文:
var UserSchema = mongoose.Schema({ name: String }) module.exports = mongoose.model('User', UserSchema);
与此方法相比:
var UserSchema = mongoose.Schema({ name: String }) mongoose.model('User', UserSchema);
使用module.exports...
与仅使用module.exports...
什么区别?
mongoose.model
返回它定义的Model
。 将其设置为module.exports
可以让您轻松创buildModel
实例,而无需从连接中检索它。
a.js
var User = require('./b'); var myUser = new User;
b.js
var UserSchema = mongoose.Schema({ name: String }) module.exports = mongoose.model('User', UserSchema);
…注意我可以直接调用new User
(在设置User
require('./b')
module.exports
require('./b')
…这是module.exports
允许我做的事情。注意,这不是mongoose
本身的一部分,而是节点模块系统 。