我正在使用seqalize js并且我有一个关系“驱动程序[可以拥有]许多驱动程序”。这基于多对多关系。
我正在尝试找到所有基于特定公司的驱动程序。我有以下内容:
models.drivers.findAll({
where: {"companies.id":1},
include: [
models.companies
]
}).then(function(result){
return res.json(result);
return;
});
我收到以下错误:
未处理的拒绝SequelizeDatabaseError:列drivers.companies.id不存在
当我输出没有where
子句的结果时,它显示关联公司就好了。我看不出这个问题会来自何处?
答案 0 :(得分:1)
methods:{
rate: function () {
var star = this.star
this.$http.post(window.BaseUrl + '/star', {star: star}).then(function (response) {
console.log('submitted');
});
},
内使用where
选项
适用于儿童模特的条款。
include
这将生成models.drivers.findAll({
include: [
{
model: models.companies,
where: { id: 1 }
}
]
}).then(function(result){
return res.json(result);
});
条件,如
JOIN
假设ON drivers.id = drivers_companies.driver_id
AND companies.id = 1
是加入drivers_companies
和drivers
之间的M:M关系的表格。