续集模型未在控制器文件中定义

问题描述

在控制器/endUserAuth 文件中,当我使用 include 从关联表中获取数据时,我收到错误 End_user 未定义。End_user 是我必须获取数据的另一种模型。在 sequelize 的文档中,我发现这是要获取的相关数据也称为 Eager Loading..我已经粘贴了我的代码

模型/用户验证

               'use strict';
 const {
 Model
 } = require('sequelize');
  module.exports = (sequelize,DataTypes) => {
   class End_User_authorization extends Model {
/**
 * Helper method for defining associations.
 * This method is not a part of Sequelize lifecycle.
 * The `models/index` file will call this method automatically.
 */
static associate(models) {
  // define association here
  End_User_authorization.belongsTo(models.End_user,{
    foreignKey:'userId',onDelete:'CASCADE'
  });
  End_User_authorization.hasOne(models.End_User_authentication,{
    foreignKey:'endUserAuthId'
  })

}
  };
End_User_authorization.init({
 userId: DataTypes.INTEGER,authCode: DataTypes.STRING,regdeviceid: DataTypes.INTEGER,regDeviceName: DataTypes.STRING,expiry: DataTypes.DATE,ipAddress: DataTypes.STRING
  },{
sequelize,modelName: 'End_User_authorization',});
  return End_User_authorization;
  };

模型/最终用户

      'use strict';
  const {
   Model
    } = require('sequelize');
    module.exports = (sequelize,DataTypes) => {
    class End_user extends Model {
/**
 * Helper method for defining associations.
 * This method is not a part of Sequelize lifecycle.
 * The `models/index` file will call this method automatically.
 */
static associate(models) {
  // define association here
  End_user.hasOne(models.End_User_authorization,{
    foreignKey:'userId'
  });

  End_user.hasOne(models.End_User_authentication,{
    foreignKey:'endUserId'
  });

  End_user.hasOne(models.AllowedIp,{
    foreignKey:'userId'
  });
  End_user.hasMany(models.Subscription,{
    foreignKey:'userId'
  })

}
 };
  End_user.init({
   firstName: DataTypes.STRING,middleName: DataTypes.STRING,lastName: DataTypes.STRING,nickName: DataTypes.STRING,email: DataTypes.STRING,mobileNumber: DataTypes.STRING,bloodGroup: DataTypes.STRING,fatherName: DataTypes.STRING,motherName: DataTypes.STRING,fingerPrint: DataTypes.BLOB,bForm: DataTypes.STRING
   },modelName: 'End_user',});
 return End_user;
  };

控制器/endUserauth

    const db = require('../config/database.js');
    const EnduserAuth = db.endUserauth;



    exports.create = (req,res) => {

     EnduserAuth.create({
      userId:req.body.userId,authCode:req.body.authCode,regdeviceid:req.body.regdeviceid,regDeviceName:req.body.regDeviceName,expiry:req.body.expiry,ipAddress:req.body.ipAddress,}).then(auth => {
         res.send(auth);
     }).catch(err => {
           res.send(err.message);
    });
     };

    exports.findAll = (req,res) => {
     EnduserAuth.findAll({
      include: {
         model: End_user,}
     }).
      then(auth => {
          res.send(auth);
          }).catch(err => {
             res.send(err.message)
           });
             };

exports.findById = (req,res) => {
EnduserAuth.findByPk(req.params.endUserAuthId).
then(auth => {
  res.send(auth)
}).catch(err => {
  res.send(err.message);
})

};

exports.update = (req,res) => {
const id = req.params.endUserAuthId;
EnduserAuth.update({
  userId:req.body.userId,},{where :{id: req.params.endUserAuthId}},).then(()=> {
   res.status(200).send("updated successfully with id = " + id);
  }).catch(err => {
       res.send(err.message);

    })

   };


exports.delete = (req,res) => {
const id = req.params.endUserAuthId;
EnduserAuth.destroy({
  where: { id: id }
}).then(() => {
  res.status(200).send('deleted successfully with id = ' + id);
}).catch(err => {
 res.send(err.message);
 })
 };

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)