From f2a032c87c37c5c7140f5e416eda76c39232669a Mon Sep 17 00:00:00 2001 From: Juan Tejada Date: Wed, 23 Nov 2016 11:49:10 -0800 Subject: [PATCH] [iso-core]: Update api for loadModels --- packages/isomorphic-core/src/models/index.js | 8 ++++---- .../local-sync/src/shared/local-database-connector.js | 7 +++++-- 2 files changed, 9 insertions(+), 6 deletions(-) diff --git a/packages/isomorphic-core/src/models/index.js b/packages/isomorphic-core/src/models/index.js index 6b89fa537..9fc670de7 100644 --- a/packages/isomorphic-core/src/models/index.js +++ b/packages/isomorphic-core/src/models/index.js @@ -1,12 +1,12 @@ const fs = require('fs'); const path = require('path'); -function loadModels(Sequelize, sequelize, modelsPath, {schema} = {}) { +function loadModels(Sequelize, sequelize, {modelsDir = __dirname, modelsSubPath = '', schema} = {}) { const db = {}; - const modelsDirectory = path.join(__dirname, modelsPath) - for (const filename of fs.readdirSync(modelsDirectory)) { + const fullModelsDir = path.join(modelsDir, modelsSubPath) + for (const filename of fs.readdirSync(fullModelsDir)) { if (filename.endsWith('.js')) { - let model = sequelize.import(path.join(modelsDirectory, filename)); + let model = sequelize.import(path.join(fullModelsDir, filename)); if (schema) { model = model.schema(schema); } diff --git a/packages/local-sync/src/shared/local-database-connector.js b/packages/local-sync/src/shared/local-database-connector.js index d76628947..3fe3ee45c 100644 --- a/packages/local-sync/src/shared/local-database-connector.js +++ b/packages/local-sync/src/shared/local-database-connector.js @@ -36,7 +36,10 @@ class LocalDatabaseConnector { } const newSequelize = this._sequelizePoolForDatabase(`a-${accountId}`); - const db = loadModels(Sequelize, newSequelize, 'account', {schema: `a${accountId}`}) + const db = loadModels(Sequelize, newSequelize, { + modelsSubPath: 'account', + schema: `a${accountId}`, + }) HookTransactionLog(db, newSequelize); HookIncrementVersionOnSave(db, newSequelize); @@ -69,7 +72,7 @@ class LocalDatabaseConnector { _sequelizeForShared() { const sequelize = this._sequelizePoolForDatabase(`shared`); - const db = loadModels(Sequelize, sequelize, 'shared') + const db = loadModels(Sequelize, sequelize, {modelsSubPath: 'shared'}) HookAccountCRUD(db, sequelize);