这是使用承诺与 Sequelize.js的正确方法吗?
Is this the proper way to use promises with Sequelize.js?
var newUser;
newUser = {
name: req.body.name,
email: req.body.email,
username: req.body.username,
password: req.body.password
};
global.db.User.create(newUser).then(function(dbUser) {
var newEntity;
newEntity = {
name: newUser.name + " Default Entity"
};
return global.db.Entity.create(newEntity);
}).then(function(dbEntity) {
console.log(dbEntity);
return res.json(dbUser.display());
})["catch"](function(err) {
console.log(err);
return next(err);
});
global.db
是一个具有User
模型和Entity
模型的 Sequelize 对象。我想先创建一个用户,然后为该用户创建一个实体。这是将事情链接在一起以使承诺有用的正确方法吗?
如果您将catch
作为.catch()
而不是["catch"]
调用,可能会更干净:
global.db.User.create(newUser).then(function(dbUser) {
var newEntity;
newEntity = {
name: newUser.name + " Default Entity"
};
return global.db.Entity.create(newEntity);
}).then(function(dbEntity) {
console.log(dbEntity);
return res.json(dbUser.display());
}).catch(function(err) {
console.log(err);
return next(err);
});
让一切都很好,很均匀。
是的;这是完全正确的。
相关文章:
- 有没有一种方法可以防止img get请求使用css或js发生
- 有条件更新d3.js力图中节点的最佳方法
- 在D3.js中,有没有任何方法可以将x和y方向上的滚动事件绑定到平移svg
- 有没有任何方法可以使用node-js从不同的机器打开浏览器
- 有没有比在app.js上绑定模块名称更好的方法来动态加载视图模型和视图以显示模态
- 有没有一种方法可以获得three.js的最小/lite版本
- Underscore.js某些对象的所有方法的总和
- node.js是否具有'match()'方法如果是,语法是什么
- 当数据库中的某些内容发生变化时调用HTTP方法Meteor.js
- 当用户点击动态创建的链接时,如何调用JS方法.JQuery,ASP.NET MVC
- 从React调用方法.JS州
- 从方法js中的函数获取对象属性
- 是否可以在 Vue 中嵌套方法.js以便对相关方法进行分组
- 主干 - 从我的原型视图调用方法.js
- $(这个).方法(js 或 jquery)
- 如何在噩梦中运行多种评估方法.js
- 如何从骨干中的集合调用模型的方法.js
- 如何在传单中使用 .off() 事件方法.js
- 检查这个的好方法和干净的方法?(JS+HTML)
- 使用爆米花迭代提示方法.js