where = {};
...
case c: {
where = Sequelize.where(Sequelize.fn('concat', Sequelize.col('firstName'), ' ', Sequelize.col('lastName')), {
like: '% John Doe %'
})
}
Model.findAll({
where: where
})
scopes: {
field: function (field, keyword = '%%') {
let where = {};
switch (field.toLowerCase()) {
case 'id':
where.id = {[Op.like]: keyword};
break;
case 'email':
where.email = {[Op.like]: keyword};
break;
case 'name' :
where = sequelize.where(sequelize.fn('concat', sequelize.col('first_name'), ' ', sequelize.col('last_name')), {
[Op.like]: keyword
});
}
return {
where
}
},
}
获取此错误:
“where子句”中的未知列“User.attribute”
console.log(where)
:
Where {
attribute: Fn { fn: 'concat', args: [ [Col], ' ', [Col] ] },
comparator: '=',
logic: { [Symbol(like)]: '%%' }
}