在火炉做网站公园坐什么车,网站建设与设计毕业shej,珠海开发网站公司,wordpress app发表sequelize egg-sequelize-auto整个过程还是有一些坑 包括兼容性问题 依赖安装问题 需要注意 缺少一个条件 包跑不起来 或使用体验很差
1. 全局安装插件
pnpm install -g sequelize-cli sequelize mysql2 egg-sequelize-auto
2. 执行命令创建 migrate迁移文件 以及 mod…sequelize egg-sequelize-auto整个过程还是有一些坑 包括兼容性问题 依赖安装问题 需要注意 缺少一个条件 包跑不起来 或使用体验很差
1. 全局安装插件
pnpm install -g sequelize-cli sequelize mysql2 egg-sequelize-auto
2. 执行命令创建 migrate迁移文件 以及 model文件
npx sequelize model:generate --name Activation --attributes activationCode:string,machineCode:string,activationVersion:string,email:string
2.1执行这个命令的前提是在根目录下创建.sequelizerc文件告诉sequelize 各个命令执行以及生成的存放目录
use strict;const path require(path);module.exports {config: path.join(__dirname, config/config.json),migrations-path: path.join(__dirname, database/migrations),seeders-path: path.join(__dirname, database/seeders),models-path: path.join(__dirname, app/model),
};
注意 生成的model 很可能用不了 因为兼容的问题
3.给自动生成的migrate文件添加注释
use strict;
/** type {import(sequelize-cli).Migration} */
module.exports {async up(queryInterface, Sequelize) {await queryInterface.createTable(Activations, {id: {allowNull: false,autoIncrement: true,primaryKey: true,type: Sequelize.INTEGER},activationCode: {type: Sequelize.STRING,comment: 激活码},machineCode: {type: Sequelize.STRING,comment: 机器码},activationVersion: {type: Sequelize.STRING,comment: 激活版本},email: {type: Sequelize.STRING,comment: 邮箱},createdAt: {allowNull: false,type: Sequelize.DATE},updatedAt: {allowNull: false,type: Sequelize.DATE}});},async down(queryInterface, Sequelize) {await queryInterface.dropTable(Activations);}
};
4. 运行 Sequelize 数据库迁移的命令
这个命令会根据migrate迁移文件 在mysql中生成对应的表
db: npx sequelize db:migrate
这个时候运行eggjs项目 跑不起来可能是因为第二的兼容问题 可以删除model下的文件 执行第五步
5. 从现有的数据库表结构生成对应的 Sequelize model模型文件
model: egg-sequelize-auto -o ./app/model -d sqlapplestven -h mysql.sqlpub.com -u applestven -p 3306 -x 7At1P1IH9eV,