0
我使用sequelize 3.24.3連接到MySQL數據庫。Sequelize - 如何從查詢自動檢索到父表的子記錄?
在數據庫中,我有兩個表之間的一個一對多的關係 - 紙& PaperVersion。 1紙張可以有多個版本。 我的要求是編寫一個查詢從Paper表中檢索紙張,返回的結果集還應該包含與紙張相關的版本。
這是我的模型看起來怎麼樣:
var Paper = sequelize.define("paper", {
Author: DataTypes.STRING,
Status: DataTypes.ENUM('Pending Submission','Submitted)
});
var PaperVersion = sequelize.define("paperVersion", {
ID: {
type: DataTypes.INTEGER,
primaryKey: true,
autoIncrement: true
},
Title: DataTypes.STRING,
Description: DataTypes.STRING
},
{
classMethods:
{
associate: function(models){
PaperVersion.belongsTo(models.paper);
}
}
});
這是我如何執行SELECT語句:
PaperModel.findAll({
})
.then(function(papers){
// do some processing
});
PaperVersion.find({
where:{
paperId:paper.id,
}
}).then(function(version){
// do some processing
});
當我對無論是紙張還是PaperVersion模型執行查找或的findAll我只從Paper或PaperVersion表中獲取記錄。 我在某處讀到可以在結果集中包含關聯表中的記錄。有人可以讓我知道我該如何做到這一點。
我收到以下錯誤:未處理的廢品:PaperVersion沒有關聯到紙上! –
忽略我以前的評論。我的模型和數據庫不同步。我在強制同步後使用它。謝謝! –