Я новичок в MongoDB.
Когда я создаю свой сервер node.js, я использую только одно соединение с БД (при запуске я подключаюсь к нему).Но представьте себе: у меня есть одна база данных с несколькими общими таблицами и несколько баз данных - каждая для настраиваемого клиента.
Как я могу создать эти БД во время выполнения?
start.js:
const mongoose = require("mongoose");
// import environmental variables from variables.env file
require("dotenv").config({ path: "variables.env" });
mongoose.connect(process.env.DATABASE);
mongoose.Promise = global.Promise;
mongoose.connection.on("error", err => {
console.error(`? → ${err.message}`);
});
require("./models/MaintenanceType");
require("./models/Maintenance");
const app = require("./app");
app.set("port", process.env.PORT || 7777);
const server = app.listen(app.get("port"), () => {
console.log('started');
});
variables.env (пример):
NODE_ENV=development
DATABASE=mongodb://db:qwe123@sometest.server.com:412345/webtest
PORT=1234
SECRET=webtest
KEY=webtestcom
и контроллер:
const mongoose = require("mongoose");
const Maintenance = mongoose.model("Maintenance");
exports.createMaintenance = async (req, res) => {
const maintenance = await new Maintenance(req.body).save();
// ALSO create a db and table if not exists for this client and use it somehow
res.json(maintenance);
};
возможно лиделать?