Skip to content

Instantly share code, notes, and snippets.

@totuworld
Last active December 23, 2016 07:14
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save totuworld/4a5414012ac7a4d39e4ca911fa9d052f to your computer and use it in GitHub Desktop.
Save totuworld/4a5414012ac7a4d39e4ca911fa9d052f to your computer and use it in GitHub Desktop.
이세계에 진입한 서버 개발 2강 자료
{
"production":{
"host":"url",
"port": 1433,
"dialect": "mssql",
"username": "replace_username",
"password": "replace_password",
"dialectOptions":{
"encrypt": true,
"database":"db"
}
},
"development":{
"host":"url",
"port": 1433,
"dialect": "mssql",
"username": "replace_username",
"password": "replace_password",
"dialectOptions":{
"encrypt": true,
"database":"db"
}
}
}
"use strict";
/// <reference path="../typings/node/node.d.ts"/>
const fs = require("fs");
const path = require("path");
const Sequelize = require("sequelize");
const env = process.env.NODE_ENV || "development";
const config = require('../config/config.json')[env];
//db에 접속하는 username과 password는 환경변수를 우선적용한다.
//// 절대 주의!!!! 공개된 레포지토리에 username과 password를 입력하지 마세요.
const username = process.env.dbUsername || config.username;
const password = process.env.dbPassword || config.password;
let sequelize = new Sequelize(config.database, username, password, config);
let 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;
module.exports = db;
//RDB ORM 추가
var models = require("./models");
//RDB 싱크 진행.
models.sequelize.sync()
.then(function () {
debug("complete rdb sync");
debug("NODE_ENV", process.env.NODE_ENV || "development");
server.listen(port);
});
server.on('error', onError);
server.on('listening', onListening);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment