using sequelize 3.30.1
我通过关联有两个类别和产品相关的模型。
var Category = sequelize.define('Category',
{ name: DataTypes.STRING });
};
var Product = sequelize.define("Product", {
price:{type:DataTypes.INTEGER,UNSIGNED:true},
{
classMethods: {
associate: function() {
Product.belongsTo(Category, {
foreignKey: {
name: 'category',
allowNull: false
}
});
});
如何使用Category.name
%CatName%
来搜索产品?
答案 0 :(得分:0)
很抱歉,但只需重新格式化代码:
var Category = sequelize.define('Category',
{
name: DataTypes.STRING
});
var Product = sequelize.define("Product",
{
price: {
type: DataTypes.INTEGER,
UNSIGNED:true
},
classMethods: {
associate: function() {
Product.belongsTo(Category, {foreignKey: {name: 'category', allowNull: false}});
}
}
});
现在你有两个模型并定义了一个关联,你可以使用findAll()方法进行查询。
var catName = 'book';
Product.findAll({
include : [
{
model: Category,
where: {
name: {
$like: '%' + catName + '%'
}
}
}
]
})
.then(function(
console.log(result);
});
看看是否有效。