1.0.0 • Published 4 years ago

mongodb-connector-plugdo v1.0.0

Weekly downloads
-
License
MIT
Repository
-
Last release
4 years ago

Collector Mongodb Plugdo ™

agregar el conector mongodb de plugdo-node

npm i mongodb-conector --save 

Un requisito es bajar la version plugdo-node

npm install plugdo-node

Agregar lo siguiente en el archivo principal del proyecto node.js

const mongodb_connect = require("mongodb-connector-plugdo/mongodb");
plugdo.registerConnector("db", "mongodb", mongodb_connect.mongodb());

conector mongodb para Plugdo™ nodeJs

Configuración del conector

// existen 2 formas de usar el conector ya sea  local o con una en un servidor ambas configuraciones son un tanto distintas  
  var serverConnect =  {
  user: "abdielflores",
  password: "1997985254522",
  host: "cluster0-xg7r9.mongodb.net",
  db: "plugdoconnector",
  options: "retryWrites=true&w=majority"
} 


//conexión local 
var serverConnectdev =  {
  user: "",
  password: "",
  host: "mongodb://localhost:27017",
  db: "Plugdo",
  options: ""
} 


  plugdo.collector("mongoSelect", {
    type: "db",
    action: "mongodb",
    server: serverConnect,
    collection: "test2Plugdo",
    model :"modelPlugdo2",
    queryType: "select",
    mode:"", // esta parte se deja vasia si se usara una base de datos de algu server si colocar "dev"
    schema: [{
      id_Curso: { type: String, require: true },
      nombre: { type: String, require: true },
      apellido: { type: String, require: true }
    }],
    parameter : []
  });

mode: Se deja vacío o se coloca prod si es con una base de datos de mongo alojada en un server, si está usando una base de datos local se coloca “dev”

schema: se coca la colección en formato de array con su tipo y validación del campo

model: nombre del modelo con el que llamara su esquema

cada comando en el controlador de mongodb lleva un esquema del json distinto: queryType: el tipo de acción que quiere ejecutar, los tipos de comando que se tiene son los básicos para hacer un CRUD

  • create
  • update
  • delete
  • select
  • count

cada uno tiene un esquema distinto al momento de enviar la data ejemplo

queryType insert

insert: su configuración en el json seria de la siguiente manera

 var dataInsert = {
    data: [
      {
        id_Curso: 555992,
        nombre: "Ussic",
        apellido: "Hernandez"
      },
      {
        id_Curso: 555992,
        nombre: "Vanesa",
        apellido: "Lopez"
      },
    ],
 
  }

Dentro de data va todo el documento que se desea insertar parta esa colección

queryType update

update: este es el encargado de actualizar un dato cualquier tipo datos, su configuración es la siguiente:

 var dataUpdate = {
   updateBy: { nombre: "Flores" },
     newData: {
       nombre: "Abdiel",
       apellido: "Cortez"
     }
 }

updateBy esta propiedad es con la que vamos a buscar dentro de la tabla que queremos actualizar, newData es la data del campo que quieras actualizar

queryType select

select: es el comando que trae todo en la base de datos, también se le pasan dos parámetros el limite de inicio y final su configuración seria de la siguiente manera

datafind = {
  find: {}
  ,
  limit: {
    value: ""
  },
  skip: {
    value: ""
  }
}

Delete: comando para eliminar un documento de la base de datos puedes buscarlo desde su id o por cualquier otro campo por lo general para eliminar un campo en una base de datos se recomienda que sea por sus _id unico

Su configuración seria la siguiente:

 dataDelete = {
    deleteBy: {
      remove: {
        _id: "5ddacf9f319c566842c4fb00"
      }
    }
  }

Dentro de remove va el campo por que se quiere buscar y borrar

Count: este comando cuenta dentro de una tabla cuantos documentos hay, también puedes contar cuantos documentos son parecidos ejemplo de configuración del json:

dataCount = {
    count: {}
  }

Observación: para utilizar este conector se recomienda instalar mongoose la última versión

#### Ejemplo de un select

plugdo.integration("mongo-connector", (message, send) => {
  let response = {};
 
  datafind = {
    find: {}
    ,
    limit: {
      value: ""
    },
    skip: {
      value: ""
    }
  }
 
 
  //  console.log(message)
  plugdo.collect("mongoSelect").get(datafind, function (data, err) {
    if (err) {
      send({}, err)
    } else {
      response.result = data;
      send(response)
    }
  })
 
});

configuracion del collector

   var serverConnect =  {
     user: "abdielflores",
     password: "1997985254522",
     host: "cluster0-xg7r9.mongodb.net",
     db: "plugdoconnector",
     options: "retryWrites=true&w=majority"
   } 
   
   var serverConnectdev =  {
     user: "",
     password: "",
     host: "mongodb://localhost:27017",
     db: "Plugdo",
     options: ""
   } 
   
   
   plugdo.collector("mongoSelect", {
     type: "db",
     action: "mongodb",
     server: serverConnect,
     collection: "test2Plugdo",
     model :"modelPlugdo2",
     queryType: "select",
     mode:"",
     schema: [{
       id_Curso: { type: String, require: true },
       nombre: { type: String, require: true },
       apellido: { type: String, require: true }
     }],
     parameter : []
   });

ejemplo de un insert mongodb

configuración del integrador

    plugdo.integration("mongo-connector", (message, send) => {
      let response = {};
    
    dataInsert = {
        data: [
          {
            id_Curso: 555992,
            nombre: "Ussic",
            apellido: "Hernandez"
          },
          {
            id_Curso: 555992,
            nombre: "Vanesa",
            apellido: "Lopez"
          },
        ],
    
      }
    
    
    
      //  console.log(message)
      plugdo.collect("mongoInsert").get(dataInsert, function (data, err) {
        if (err) {
          send({}, err)
        } else {
          response.result = data;
          send(response)
        }
      })
    
    });

configuracion del collector

   var serverConnect =  {
     user: "abdielflores",
     password: "1997985254522",
     host: "cluster0-xg7r9.mongodb.net",
     db: "plugdoconnector",
     options: "retryWrites=true&w=majority"
   } 
   
   var serverConnectdev =  {
     user: "",
     password: "",
     host: "mongodb://localhost:27017",
     db: "Plugdo",
     options: ""
   } 
   
   
   plugdo.collector("mongoInsert", {
     type: "db",
     action: "mongodb",
     server: serverConnect,
     collection: "test2Plugdo",
     model :"modelPlugdo2",
     queryType: "insert",
     mode:"",
     schema: [{
       id_Curso: { type: String, require: true },
       nombre: { type: String, require: true },
       apellido: { type: String, require: true }
     }],
     parameter : []
   });

Ejemplo para un Update

configuración del integrador

plugdo.integration("mongo-connector", (message, send) => {
  let response = {};
var dataUpdate = {
  updateBy: { nombre: "Flores" },
    newData: {
      nombre: "Abdiel",
      apellido: "Cortez"
    }
}
 
 
 
  //  console.log(message)
  plugdo.collect("mongoUpdate").get(dataUpdate, function (data, err) {
    if (err) {
      send({}, err)
    } else {
      response.result = data;
      send(response)
    }
  })
 
});

configuracion del collector

   var serverConnect =  {
     user: "abdielflores",
     password: "1997985254522",
     host: "cluster0-xg7r9.mongodb.net",
     db: "plugdoconnector",
     options: "retryWrites=true&w=majority"
   } 
   
   var serverConnectdev =  {
     user: "",
     password: "",
     host: "mongodb://localhost:27017",
     db: "Plugdo",
     options: ""
   } 
   
   
   plugdo.collector("mongoUpdate", {
     type: "db",
     action: "mongodb",
     server: serverConnect,
     collection: "test2Plugdo",
     model :"modelPlugdo2",
     queryType: "update",
     mode:"",
     schema: [{
       id_Curso: { type: String, require: true },
       nombre: { type: String, require: true },
       apellido: { type: String, require: true }
     }],
     parameter : []
   });

Ejemplo para un delete

configuración del integrador

plugdo.integration("mongo-connector", (message, send) => {
  let response = {};
dataDelete = {
    deleteBy: {
      remove: {
        _id: "5ddacf9f319c566842c4fb00"
      }
    }
  }
 
  //  console.log(message)
  plugdo.collect("mongoDelete").get(dataDelete, function (data, err) {
    if (err) {
      send({}, err)
    } else {
      response.result = data;
      send(response)
    }
  })
 
});

configuracion del collector

   var serverConnect =  {
     user: "abdielflores",
     password: "1997985254522",
     host: "cluster0-xg7r9.mongodb.net",
     db: "plugdoconnector",
     options: "retryWrites=true&w=majority"
   } 
   
   var serverConnectdev =  {
     user: "",
     password: "",
     host: "mongodb://localhost:27017",
     db: "Plugdo",
     options: ""
   } 
   
   
   plugdo.collector("mongoDelete", {
     type: "db",
     action: "mongodb",
     server: serverConnect,
     collection: "test2Plugdo",
     model :"modelPlugdo2",
     queryType: "delete",
     mode:"",
     schema: [{
       id_Curso: { type: String, require: true },
       nombre: { type: String, require: true },
       apellido: { type: String, require: true }
     }],
     parameter : []
   });

Ejemplo de count configuración del integrador

plugdo.integration("mongo-connector", (message, send) => {
  let response = {};
dataCount = {
    count: {}
  }
 

  //  console.log(message)
  plugdo.collect("mongoCount").get(dataCount, function (data, err) {
    if (err) {
      send({}, err)
    } else {
      response.result = data;
      send(response)
    }
  })
 
});

configuracion del collector

var serverConnect =  {
 user: "abdielflores",
 password: "1997985254522",
 host: "cluster0-xg7r9.mongodb.net",
 db: "plugdoconnector",
 options: "retryWrites=true&w=majority"
} 

var serverConnectdev =  {
 user: "",
 password: "",
 host: "mongodb://localhost:27017",
 db: "Plugdo",
 options: ""
} 


plugdo.collector("mongoCount", {
 type: "db",
 action: "mongodb",
 server: serverConnect,
 collection: "test2Plugdo",
 model :"modelPlugdo2",
 queryType: "count",
 mode:"",
 schema: [{
   id_Curso: { type: String, require: true },
   nombre: { type: String, require: true },
   apellido: { type: String, require: true }
 }],
 parameter : []
});

para ver mas sobre la configuracion de los conectores revisar la pagina de plugdo doc

https://docs.plugdo.com/#plugdo-node-server

https://docs.plugdo.com/#plugdo-node-mvc

1.0.0

4 years ago