diff --git a/packages/strapi-mongoose/lib/index.js b/packages/strapi-mongoose/lib/index.js index 78f29b5b63..e5ec47559f 100644 --- a/packages/strapi-mongoose/lib/index.js +++ b/packages/strapi-mongoose/lib/index.js @@ -99,31 +99,31 @@ module.exports = function (strapi) { const done = _.after(_.size(definition.attributes), function () { try { // Initialize lifecycle callbacks. - loadedModel.initialize = function () { - const self = this; - const lifecycle = { - creating: 'beforeCreate', - created: 'afterCreate', - destroying: 'beforeDestroy', - destroyed: 'afterDestroy', - updating: 'beforeUpdate', - updated: 'afterUpdate', - fetching: 'beforeFetch', - fetched: 'afterFetch', - saving: 'beforeSave', - saved: 'afterSave' - }; + // loadedModel.initialize = function () { + // const self = this; + // const lifecycle = { + // creating: 'beforeCreate', + // created: 'afterCreate', + // destroying: 'beforeDestroy', + // destroyed: 'afterDestroy', + // updating: 'beforeUpdate', + // updated: 'afterUpdate', + // fetching: 'beforeFetch', + // fetched: 'afterFetch', + // saving: 'beforeSave', + // saved: 'afterSave' + // }; + // + // _.forEach(lifecycle, function (fn, key) { + // if (_.isFunction(strapi.models[model.toLowerCase()][fn])) { + // self.on(key, strapi.models[model.toLowerCase()][fn]); + // } + // }); + // }; - _.forEach(lifecycle, function (fn, key) { - if (_.isFunction(strapi.models[model.toLowerCase()][fn])) { - self.on(key, strapi.models[model.toLowerCase()][fn]); - } - }); - }; + console.log(loadedModel); - const schema = mongoose.Schema(loadedModel.attributes); - - console.log(schema); + const schema = mongoose.Schema(loadedModel); global[globalName] = mongoose.model(globalName, schema);; @@ -154,8 +154,7 @@ module.exports = function (strapi) { if (!_.isEmpty(verbose)) { utilsModels.defineAssociations(globalName, definition, details, name); } else { - console.log(name, details); - loadedModel[name].type = utils.convertType(details.type); + loadedModel[name].type = utils(mongoose).convertType(details.type); } switch (verbose) { diff --git a/packages/strapi-mongoose/lib/utils/index.js b/packages/strapi-mongoose/lib/utils/index.js index 3d625cb638..2ca9596c32 100644 --- a/packages/strapi-mongoose/lib/utils/index.js +++ b/packages/strapi-mongoose/lib/utils/index.js @@ -7,12 +7,14 @@ // Public node modules. const _ = require('lodash'); -module.exports = (mongoose) => { - const Decimal = require('mongoose-double').loadType(mongoose); - const Float = require('mongoose-float').loadType(mongoose); +module.exports = mongoose => { + require('mongoose-double')(mongoose); + require('mongoose-float').loadType(mongoose); + + const SchemaTypes = mongoose.Schema.Types; return { - convertType: (mongooseType) => { + convertType: mongooseType => { switch (mongooseType.toLowerCase()) { case 'string': case 'text': @@ -21,9 +23,9 @@ module.exports = (mongoose) => { case 'biginteger': return 'Number' case 'float': - return Float; + return SchemaTypes.Float; case 'decimal': - return Decimal; + return SchemaTypes.Double; case 'date': case 'time': case 'datetime':