Я создал пользовательскую функцию JavaScript в mongodb.
db.system.js.save(
{
_id : "generateSRID" ,
value : function (zone_id, length){ var randomNum = (Math.pow(10,length).toString().slice(length-1) + Math.floor((Math.random()*Math.pow(10,length))+1).toString()).slice(-length); return 'SR'+zone_id+'-' + randomNum; }
});
У меня есть схема мангуста,
const mongoose = require('mongoose');
const Schema = mongoose.Schema;
const schema = new Schema({
type: {type: String, required: true},
service: {type: String, required: true},
object: {type: String, required: true},
method: {type: String, required: true},
log: {type:String, required: true},
srid : {type: String} <== need to generate while saving
});
module.exports = mongoose.model('Logger', schema);
Мой вопрос таков: как я могу получить доступ к пользовательской функции при сохранении схемы?
Возможно ли, если нет - какая альтернатива.
var data = {
"type" : "Info",
"service" : "customerService",
"object" : "customer.controller",
"method" : "getCustomerByMSISDN",
"log" : "INVOKE:getCustomerByMSISDN",
"srid" : generateSRID(2,10) <== access mongodb fuction
};
const logger = new Logger(data);
logger.save(function(err, result) {
if (err) {
console.log(err);
}
console.log("## Log created successfully ##");
});