我想对其他表使用相同的表Photo
。
我读过Sequelize doc here
他们使用范围并设置约束= false,如此
const Comment = this.sequelize.define('comment', {
title: Sequelize.STRING,
commentable: Sequelize.STRING,
commentable_id: Sequelize.INTEGER
});
Comment.prototype.getItem = function(options) {
return this['get' + this.get('commentable').substr(0, 1).toUpperCase() + this.get('commentable').substr(1)](options);
};
Post.hasMany(this.Comment, {
foreignKey: 'commentable_id',
constraints: false,
scope: {
commentable: 'post'
}
});
Comment.belongsTo(this.Post, {
foreignKey: 'commentable_id',
constraints: false,
as: 'post'
});

我的问题是:我如何查询帖子列表,其中包含每个帖子的列表评论(如果可以的话,有限制)。 谢谢。
答案 0 :(得分:1)
我如何查询包含每个帖子的列表评论的帖子列表
在这里,试试这个
Post
.find({
where: { /* include where condition if you have or remove this */ },
include: [{
model: Comment,
as: 'comments',
}],
})
.then(function(result) {
// check result.dataValues. it should contain `comments` array
});
我想这个限制尚不可用。检查此更新 https://github.com/sequelize/sequelize/issues/1897