12345678910111213141516171819202122232425262728293031323334353637383940414243 |
- const { Sequelize } = require('sequelize');
- const { mariadbfuxi: config } = require('../../../config');
- const { dateFormat } = require('../../../utils');
- function formatTime(m) {
- delete m.deletedAt;
- m.createdAt && (m.createdAt = dateFormat(m.createdAt));
- m.updatedAt && (m.updatedAt = dateFormat(m.updatedAt));
- }
- const connect = new Sequelize({
- encrypt: true,
- ...config,
- dialect: 'mysql',
- pool: {
- max: 5,
- min: 0,
- acquire: 30000,
- idle: 10000,
- },
- define: {
- // prevent sequelize from pluralizing table names
- charset: 'utf8',
- collate: 'utf8_bin',
- paranoid: true,
- underscored: true,
- timestamps: true,
- freezeTableName: true,
- initialAutoIncrement: 10000,
- },
- timezone: '+08:00',
- logging: console.log,
- benchmark: true,
- logQueryParameters: true,
- query: {
- raw: true,
- },
- hooks: {
- afterFind(m) {
- m && (Array.isArray(m) ? m.forEach(item => formatTime(item)) : formatTime(m));
- },
- },
- });
- module.exports = connect;
|