use*_*636 3 mongoose mongodb node.js mongoose-schema
我有一个user.js文件,其中包含我所有的mongoose模式和方法,大致如下:
var userSchema = mongoose.Schema({
name: { type: String, required: true, trim: true },
surname: { type: String, required: true },
});
var User = mongoose.model('User', userSchema);
Run Code Online (Sandbox Code Playgroud)
现在,最好公开模拟数据的函数吗?像这样:
exports.addUser = function(data, next){
user = new User(data);
user.save(next);
};
exports.getAll = function(next){
var query = User.find();
query.exec(next);
};
Run Code Online (Sandbox Code Playgroud)
或者只露出User要在别处使用的对象?
module.exports = User; //or
exports.User = User;
Run Code Online (Sandbox Code Playgroud)
我也面临着从第二个解决方案中得到的问题,假设我想向我添加一个汽车列表userSchema,并且汽车架构在另一个文件car.js中定义,那么这意味着我将不得不carSchema为我的用户公开.js文件,对吗?这意味着我实际上取消了上面提供的第二个解决方案,那么,做这种事情的正确方法是什么?
小智 5
有趣的问题.
这可能只是一个"语法糖"的东西,但我坚持第二个变种,因为有恕我直言,没有必要封装一代等等.猫鼬是围绕这些东西的包装,然后可以使用纯猫鼬模型和模式.这对你来说听起来合理吗?
exports.User = User;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2162 次 |
| 最近记录: |