我想知道实现 MVC 模式的最佳方法是sails.js。
现在我有以下结构:我有一个将请求重定向到控制器的路由:
'POST /api/user/...': {controller: 'UserController', action: 'someFunction'},
我的用户模型:
module.exports = {
...
attributes: {...}
}
我有控制器:
someFunction: function(req, res) {
let param = req.body.param;
let userId = req.session.userId;
userService.someFunction(userId, param, function (result) {
return res.json({result});
});
},
在 userService 中,我有操作数据库的方法,例如:
someFunction: function(userId, param, callback){
User.findOne(userId).exec(function (err, user){
if (err) {
callback(false);
} else {
// find the user's additional info
User.update({name: param}, { ... })
}
我真正的问题是这是一个很好的模式,还是我走错了路。
感谢您的任何回应。
注意:此问题的答案可以基于意见。这是我的意见。
Sails 项目采用 MVC 模式搭建。模型 ( api/models
)、控制器 ( api/controllers
) 和视图 ( views
)有单独的文件夹。
您在服务中使用数据库方法是正确的。
多个控制器操作可能需要的任何内容都应进入服务。
其他想法:
async/await
. Sails (Waterline) 方法返回 Bluebird 承诺,它适用于 async/await。本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句