1. 程式人生 > 其它 >eggjs sequelize操作多個數據,表名不加s,不預設加建立和修改時間欄位

eggjs sequelize操作多個數據,表名不加s,不預設加建立和修改時間欄位

操作多個數據庫:

// 多個數據庫操作,model名稱不同
  // model目前專案的庫,model2是之前的招聘庫,model3是cd公共庫
  config.sequelize = {
    datasources: [
      {
        dialect: 'mysql',
        host: '127.0.0.1',
        port: 3306,
        database: 'talent_management',
        username: "root",
        password: "root",
        charset: "utf8",

        timezone: 
"+08:00", dialectOptions: { dateStrings: true, typeCast(field, next) { if (field.type === "DATETIME") { // 返回正確得時間 return field.string(); } return next(); } } }, { dialect: 'mysql',
// 通過egg的app或者ctx訪問這個模型的欄位 // 預設是model,也就是app.model.xx // 這裡是通過app.Model2來使用db1資料庫的模型 delegate: 'model2', // 指定模型檔案在哪裡,預設是model // 如果是在子目錄如model/xx,要保證model沒被單獨使用 baseDir: 'model2', dialectOptions: { charset: 'utf8mb4', }, define: { freezeTableName:
true, createdAt: false, updatedAt: false }, database: '***', host: '***', port: '3306', username: "root", password: "***", // host: '***', // username: "***", // password: "***", timezone: "+08:00", dialectOptions: { dateStrings: true, typeCast(field, next) { if (field.type === "DATETIME") { // 返回正確得時間 return field.string(); } return next(); } } }, { dialect: 'mysql', // 通過egg的app或者ctx訪問這個模型的欄位 // 預設是model,也就是app.model.xx // 這裡是通過app.Model2來使用db1資料庫的模型 delegate: 'model3', // 指定模型檔案在哪裡,預設是model // 如果是在子目錄如model/xx,要保證model沒被單獨使用 baseDir: 'model3', dialectOptions: { charset: 'utf8mb4', }, define: { freezeTableName: true, createdAt: false, updatedAt: false }, database: '***', host: '192.168.0.10', port: '3306', username: "root", password: "***", // host: '***', // username: "***", // password: "**", timezone: "+08:00", dialectOptions: { dateStrings: true, typeCast(field, next) { if (field.type === "DATETIME") { // 返回正確得時間 return field.string(); } return next(); } } }, ] }

表名建立不加s,不預設加建立和修改時間欄位:

define: {
    freezeTableName: true,
    createdAt: false,
    updatedAt: false
},