Created
August 16, 2015 18:09
-
-
Save slmyers/dd48c8c19298abe46873 to your computer and use it in GitHub Desktop.
index file for model folder in sequelize project
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
"use strict"; | |
var fs = require("fs"); | |
var path = require("path"); | |
var Sequelize = require("sequelize"); | |
var env = process.env.NODE_ENV || "development"; | |
var config = require(__dirname + '/../config/config.json')[env]; | |
var sequelize = new Sequelize(config.database, config.username, config.password, config); | |
var db = {}; | |
fs | |
.readdirSync(__dirname) | |
.filter(function(file) { | |
return (file.indexOf(".") !== 0) && (file !== "index.js"); | |
}) | |
.forEach(function(file) { | |
var model = sequelize.import(path.join(__dirname, file)); | |
db[model.name] = model; | |
}); | |
Object.keys(db).forEach(function(modelName) { | |
if ("associate" in db[modelName]) { | |
db[modelName].associate(db); | |
} | |
}); | |
db.sequelize = sequelize; | |
db.Sequelize = Sequelize; | |
Haven't used in forever. No idea, sorry.
Sequelize version 6.25.8 default index.js file in the models
folder:
'use strict';
const fs = require('fs');
const path = require('path');
const Sequelize = require('sequelize');
const process = require('process');
const basename = path.basename(__filename);
const env = process.env.NODE_ENV || 'development';
const config = require(__dirname + '/../config/config.json')[env];
const db = {};
let sequelize;
if (config.use_env_variable) {
sequelize = new Sequelize(process.env[config.use_env_variable], config);
} else {
sequelize = new Sequelize(config.database, config.username, config.password, config);
}
fs
.readdirSync(__dirname)
.filter(file => {
return (file.indexOf('.') !== 0) && (file !== basename) && (file.slice(-3) === '.js');
})
.forEach(file => {
const model = require(path.join(__dirname, file))(sequelize, Sequelize.DataTypes);
db[model.name] = model;
});
Object.keys(db).forEach(modelName => {
if (db[modelName].associate) {
db[modelName].associate(db);
}
});
db.sequelize = sequelize;
db.Sequelize = Sequelize;
module.exports = db;
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
its work for version 5 or have deprecting warning ?