我想创建一个如下所示的模型:
var category = db.define('category', {
name: {
type: Types.STRING,
},
position: {
type: Types.INTEGER
}
}, {
classMethods:{
associate: function (models) {
category.belongsTo(models.category);
category.hasMany(models.category);
}
}
});
它在我的数据库中起作用,我在类别表中有“CategoryId”,但是当我想在查询中包含类别模型时,它不起作用,我会遇到一个问题:
Error: ER_NONUNIQ_TABLE: Not unique table/alias: 'category'
我的问题是:
this.context.category.findAll({include: [{model: this.context.category}]});
最佳答案
你只需要改变关系的顺序(belongsTo/hasMany)
var category = sequelize.define('category', {
name: {
type: Sequelize.STRING,
},
position: {
type: Sequelize.INTEGER
}
}, {
classMethods:{
associate: function (c) {
category.hasMany(c);
category.belongsTo(c);
}
}
});