【发布时间】:2016-11-01 18:55:09
【问题描述】:
所有,下面附上一个 SQL 查询,我在 sequelize 中用作原始查询,它运行良好。现在我正在尝试在 sequelize 中使用 mixin 关联来设置它,但无法这样做。确实浏览了帮助文档,但无法完全掌握细节。也许它只是我。无论如何,下面附上我正在尝试修改的查询。如果有人可以提出一些指示或有一些样本来帮助我重做这个,我将不胜感激?提前致谢。
select cust.*, cust_role.id, cust_role.rolename, role.roletype
from
customer cust, customer_roles cust_role, roles role
where
cust.id = cust_role.user and
cust_role.role = role.id and
cust.id like '0123456' //customerId
表关系
customer_roles has a foreign key to both roles and customer tables
customer to customer_roles (1 to many),
customer_roles to roles (many to 1)
我正在导入模型
var custModel = sequelize.import('../models/customer.js');
var custRolesModel = sequelize.import('../models/customer_roles.js');
var roleModel = sequelize.import('../models/roles.js');
试图建立关系
custModel.hasMany(custRolesModel);
custRolesModel.belongsTo(custModel);
roleModel.hasMany(custRolesModel);
custRolesModel.belongsTo(roleModel);
最后试图吸引客户..
custModel.findAll({
include:[{
model:custRolesModel,
include:[{
model:roleModel,
where: {
username:req.body.username
},
required:false
}]
}]
}).then(function (result) {
......
【问题讨论】:
标签: mysql node.js sequelize.js