[英]Sequelize Many to Many realtionship
我正在使用 Sequelize,我有兩個模型,具有多對多關系,員工 model 它具有 RegistrationNmuber 作為主鍵、名字、姓氏以及其他信息,以及一條消息 model 它有一個 id 屬性,來自屬性是員工的RegistrationNumber,to屬性包含另一個員工的RegistrationNumber和message屬性,我想做的是從“消息模型的from屬性”中找到員工的信息,是否可以這樣做以及如何?? 如果不能,請提出解決方案
// employee model:
module.exports = (sequelize,Sequelize) => {
const Employee = sequelize.define('Employee' ,{
RegistrationNumber :{
type: Sequelize.BIGINT,
primaryKey: true
},
CIN : {
type:Sequelize.BIGINT,
unique: true
},
FirstName: {
type: Sequelize.STRING,
},
LastName: {
type: Sequelize.STRING
},
image:{
type: Sequelize.BLOB
},
DateofBirth: {
type: Sequelize.DATE,
},
PlaceOfBirth: {
type: Sequelize.STRING,
},
Address: {
type: Sequelize.TEXT,
},
Email: {
type: Sequelize.TEXT,
unique: true
},
PhoneNumber: {
type: Sequelize.BIGINT,
},
DateofNamingRank :{
type: Sequelize.DATE
},
DateofDesignationAdministration :{
type: Sequelize.DATE
},
Type :{
type: Sequelize.STRING
},
DateofDemarcation :{
type: Sequelize.DATE
},
Item :{
type: Sequelize.STRING
},
Rank :{
type: Sequelize.STRING
},
Case :{
type: Sequelize.STRING
},
Position :{
type: Sequelize.STRING
},
ActualWork :{
type:Sequelize.STRING
},
Wire :{
type: Sequelize.STRING
},
Plan :{
type: Sequelize.STRING
},
Specialization :{
type: Sequelize.STRING
},
Intrest :{
type: Sequelize.STRING
},
Role :{
type:Sequelize.STRING
},
Login:{
type:Sequelize.STRING
},
Password :{
type:Sequelize.STRING
}
},
); return Employee;
}
// message Model
module.exports =( sequelize,Sequelize)=>{
const Messages = sequelize.define('Messages' ,{
id :{
type: Sequelize.BIGINT,
primaryKey: true,
autoIncrement: true
},
from :{
type : Sequelize.BIGINT
},
to :{
type : Sequelize.BIGINT
} ,
message:{
type: Sequelize.TEXT
}
})
return Messages;
}
// Relation
db.employee.belongsToMany(db.messages,{
through : "employee_Messages",
} )
db.messages.belongsToMany(db.employee ,
{through:"employee_Messages"})
db.messages.belongsTo(db.employee, { foreignKey: "from" }) db.messages.belongsTo(db.employee, { foreignKey: "to" }) messages.find({ where: { id: messageId }, include: [{ model: employee, as: from, required: true }, { model: employee, as: to, required: true } ] }).then(message => { const userfrom = message.from; const userto = message.to; })
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.