sql >> Databáze >  >> NoSQL >> MongoDB

Jak dynamicky vytvořit schéma Mongodb pomocí nodejs

Jistě, že je to možné... – navrhujeme použít express jako serverový framework:

import mongoose from 'mongoose';
import { Router } from 'express';
const router = Router();

router.post('/newModel/', createNewModel);

function createNewModel(req, res, next) {
  const Schema = mongoose.Schema;
  // while req.body.model contains your model definition
  mongoose.model(req.body.modelName, new Schema(req.body.model));
  res.send('Created new model.');
}

...ale buďte prosím opatrní! Otevření cesty pro uživatele, jak snadno upravit vaši databázi, obvykle není dobrý nápad.

Aktualizace: Formát je přesně stejný jako ten, který chcete mít v závorce:

{
  "title": { "type": "String", "required": "true" },
  "content": { "type": "String", "required": "true" },
  "slug": { "type": "String", "required": "true" }
}



  1. Ukládejte obrázky v Mongodb a podávejte je pomocí Nodejs

  2. Dávková aktualizace s Mongoose

  3. Získání unixového časového razítka v sekundách z MongoDB ISODate během agregace

  4. Jak vytvořit Mongo Docker Image s výchozími kolekcemi a daty?