我真的很喜欢Resql改变了sequelize的功能:
students.find({where: {id: 34235}}).success(function(student) {
student.getCourses().success(function(courses) {
console.log(courses);
});
});
要:
students.one({id: 34235}).courses().then(function(courses) {
console.log(courses);
});
我想知道现在是否有办法使用sequelize?
例如:
models.User.find(1).getProducts()
我一直收到错误:
TypeError: Object [object Promise] has no method 'getProducts'
谢谢!
答案 0 :(得分:1)
这在sequelize中根本不可能 - 节点本质上是异步的,因此你必须先找到用户才能调用getProducts
。
但是你可以使用包括:
User.find({
where: {
id: x
},
include: [Course]
}).then(function (user) {;
这会让加入用户留下课程,您可以访问user.course
(或user.Course
,具体取决于课程模型的名称)