UNPKG

minervajs-mochuelo

Version:

Modulo para la gestión del Modelo de Datos, muy util para desarrollos basados en 'Base de Datos Primero'

69 lines (54 loc) 1.99 kB
// Ejemplo de uso del paquete mi-modelo-de-datos const { ModelManager } = require('mi-modelo-de-datos'); // Inicializar el administrador de modelos const modelManager = new ModelManager(); // Obtener el modelo "pais" const paisModel = modelManager.getModel('pais'); if (paisModel) { console.log('Modelo "pais" encontrado:', paisModel.definition); // Datos para crear un nuevo objeto "pais" const nuevoPaisData = { iso3: 'USA', nombre: 'Estados Unidos', leyenda: 'Tierra de las oportunidades', iso2: 'US', }; // Intentar crear un objeto "pais" const nuevoPaisObjeto = paisModel.createObject(nuevoPaisData); if (nuevoPaisObjeto) { console.log('Nuevo objeto "pais" creado:', nuevoPaisObjeto); } else { console.log('Los datos del nuevo país no son válidos según el modelo.'); } // Intentar crear un objeto "pais" con datos inválidos (faltando un campo requerido) const paisInvalidoData = { iso3: 'CAN', leyenda: 'La hoja de maple', iso2: 'CA', }; const paisInvalidoObjeto = paisModel.createObject(paisInvalidoData); if (!paisInvalidoObjeto) { console.log('La validación detectó datos inválidos para el modelo "pais".'); } } else { console.log('El modelo "pais" no se encontró.'); } // Ejemplo de cómo agregar un nuevo modelo const nuevoModeloDefinicion = { "name": "ciudad", "title": "Ciudad", "table": "ciudad", "primary_key": ["id"], "columns": [ { "col": "id", "type": "number", "required": true }, { "col": "nombre", "type": "string", "required": true }, { "col": "pais_iso3", "type": "string", "required": true } ] }; modelManager.addModel(nuevoModeloDefinicion); console.log('Se ha agregado el modelo "ciudad".'); // Intentar obtener el nuevo modelo "ciudad" const ciudadModel = modelManager.getModel('ciudad'); if (ciudadModel) { console.log('Modelo "ciudad" encontrado:', ciudadModel.definition); }