आप जो भी DB कनेक्शन बनाना चाहते हैं, उसके लिए आपको अगली कड़ी के अलग-अलग उदाहरण बनाने होंगे:
const Sequelize = require('Sequelize');
const userDb = new Sequelize(/* ... */);
const contentDb = new Sequelize(/* ... */);
अनुक्रम से बनाए गए प्रत्येक उदाहरण की अपनी डीबी जानकारी होती है (डीबी होस्ट, यूआरएल, उपयोगकर्ता, पास, आदि...) , और ये मान बदलने के लिए नहीं हैं, इसलिए अनुक्रम के एक उदाहरण के साथ एकाधिक कनेक्शन बनाने का कोई "सही" तरीका नहीं है।
प्रति डेटाबेस एक उदाहरण
ऐसा करने के लिए एक "सामान्य" दृष्टिकोण, आपके डेटाबेस को config.json
. में रखना है डायनामिक रूप से कनेक्शन बनाने के लिए फ़ाइल और उस पर लूप करें, कुछ इस तरह हो सकता है:
config.json
{
/*...*/
databases: {
user: {
path: 'xxxxxxxx'
},
content: {
path: 'xxxxxxxx'
}
}
}
आपका ऐप
const Sequelize = require('sequelize');
const config = require('./config.json');
// Loop through
const db = {};
const databases = Object.keys(config.databases);
for(let i = 0; i < databases.length; ++i) {
let database = databases[i];
let dbPath = config.databases[database];
db[database] = new Sequelize( dbPath );
}
// Or a one liner
const db = Object.entries(config).reduce((r, db) => (r[db[0]] = db[1].path) && r, {});
// Sequelize instances:
// db.user
// db.content
इसे चलाने और चलाने के लिए आपको थोड़ी अधिक कोडिंग करने की आवश्यकता होगी लेकिन यह एक सामान्य विचार है।