簡體   English   中英

續集多對多關系

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM