【发布时间】:2021-03-20 02:43:45
【问题描述】:
-
C:\Users\lenovo\Desktop\Yoobou\Yoobou>sequelize db:migrate
Sequelize CLI [节点:14.15.1,CLI:6.2.0,ORM:6.3.5]
已加载配置文件“config\config.json”。使用环境 “发展”。 == 20201207141344-create-producteurs:迁移 =======
错误:找不到模块 'sequelize/types' 需要堆栈:
- C:\Users\lenovo\Desktop\Yoobou\Yoobou\migrations\20201207141344-create-producteurs.js
- C:\Users\lenovo\AppData\Roaming\npm\node_modules\sequelize-cli\node_modules\umzug\lib\migration.js
- C:\Users\lenovo\AppData\Roaming\npm\node_modules\sequelize-cli\node_modules\umzug\lib\index.js
- C:\Users\lenovo\AppData\Roaming\npm\node_modules\sequelize-cli\lib\core\migrator.js
- C:\Users\lenovo\AppData\Roaming\npm\node_modules\sequelize-cli\lib\commands\migrate.js
- C:\Users\lenovo\AppData\Roaming\npm\node_modules\sequelize-cli\lib\sequelize
//迁移 20201207141344-create-producteurs.js
'使用严格';常量 { UniqueConstraintError } = require('sequelize/types');
module.exports = { up: async (queryInterface, Sequelize) => { 等待 queryInterface.createTable('PRODUCTEURS', { ID: { 允许空:假, 自动增量:真, 主键:真, 类型:Sequelize.INTEGER, },
first_name: { allowNull: false, type: Sequelize.STRING, unique: true, }, last_name: { allowNull: false, type: Sequelize.STRING, }, email: { allowNull: false, type: Sequelize.STRING, Unique: true, }, password: { allowNull: false, type: Sequelize.STRING, }, avatar: { allowNull: false, type: Sequelize.STRING, }, createdAt: { allowNull: false, type: Sequelize.DATE, }, updatedAt: { allowNull: false, type: Sequelize.DATE, }, }); }, down: async (queryInterface, Sequelize) => { await queryInterface.dropTable('PRODUCTEURS'); }, }; // ASSOCIATION MODELS 'use strict'; const { Model } = require('sequelize'); module.exports = (sequelize, DataTypes) => {类 ADMINISTRATEUR 扩展模型 { /** * 定义关联的辅助方法。 * 此方法不是 Sequelize 生命周期的一部分。 *
models/index文件会自动调用该方法。 / 关联(模型){ // 这里定义关联 models.ADMINISTRATEUR.hasMany(models.CLIENTS); models.ADMINISTRATEUR.hasMany(models.PRODUITS); models.ADMINISTRATEUR.hasMany(models.ADRESSE_CLIENTS); 模型.ADMINISTRATEUR.hasMany(模型.CATEGORY_PRODUITS); models.ADMINISTRATEUR.hasMany(models.COMMANDES); models.ADMINISTRATEUR.hasMany(models.PRODUCTEURS); 模型.ADMINISTRATEUR.hasMany(模型.AVIS); } } 管理员.init( { first_name:DataTypes.STRING, 姓氏:DataTypes.STRING, 电子邮件:DataTypes.STRING, 密码:DataTypes.STRING, 头像:DataTypes.STRING, }, { 续集, 模型名称:'管理员', });返回管理员; }; '使用严格'; const { 模型 } = require('sequelize'); module.exports = (sequelize, DataTypes) => { 类 PRODUCTEURS 扩展模型 { /* * 定义关联的辅助方法。 * 此方法不是 Sequelize 生命周期的一部分。 *models/index文件会自动调用该方法。 */ 静态关联(模型){ // 这里定义关联 models.PRODUCTEURS.belongsTo(models.ADMINISTRATEUR , { 外键:{ 允许空:假 } }); models.PRODUCTEURS.hasMany(models.CLIENTS); models.PRODUCTEURS.hasMany(models.PRODUITS); models.PRODUCTEURS.hasMany(models.ADRESSE_CLIENTS); models.PRODUCTEURS.hasMany(models.CATEGORY_PRODUITS); models.PRODUCTEURS.hasMany(models.COMMANDES); } }; PRODUCTEURS.init({ first_name:DataTypes.STRING, 姓氏:DataTypes.STRING, 电子邮件:DataTypes.STRING, 密码:DataTypes.STRING, 头像:DataTypes.STRING }, { 续集, modelName: 'PRODUCTEURS', });返回 PRODUCTEURS; };
【问题讨论】:
-
你能显示
20201207141344-create-producteurs.js吗? -
@Anatoly 我把它放回问题中
标签: mysql database configuration sequelize.js database-migration