mirror of
https://github.com/strapi/strapi.git
synced 2025-11-17 02:28:30 +00:00
Handle basic types for mongoose
This commit is contained in:
parent
3cd111bdb2
commit
c87ff0edbf
@ -99,31 +99,31 @@ module.exports = function (strapi) {
|
|||||||
const done = _.after(_.size(definition.attributes), function () {
|
const done = _.after(_.size(definition.attributes), function () {
|
||||||
try {
|
try {
|
||||||
// Initialize lifecycle callbacks.
|
// Initialize lifecycle callbacks.
|
||||||
loadedModel.initialize = function () {
|
// loadedModel.initialize = function () {
|
||||||
const self = this;
|
// const self = this;
|
||||||
const lifecycle = {
|
// const lifecycle = {
|
||||||
creating: 'beforeCreate',
|
// creating: 'beforeCreate',
|
||||||
created: 'afterCreate',
|
// created: 'afterCreate',
|
||||||
destroying: 'beforeDestroy',
|
// destroying: 'beforeDestroy',
|
||||||
destroyed: 'afterDestroy',
|
// destroyed: 'afterDestroy',
|
||||||
updating: 'beforeUpdate',
|
// updating: 'beforeUpdate',
|
||||||
updated: 'afterUpdate',
|
// updated: 'afterUpdate',
|
||||||
fetching: 'beforeFetch',
|
// fetching: 'beforeFetch',
|
||||||
fetched: 'afterFetch',
|
// fetched: 'afterFetch',
|
||||||
saving: 'beforeSave',
|
// saving: 'beforeSave',
|
||||||
saved: 'afterSave'
|
// 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) {
|
console.log(loadedModel);
|
||||||
if (_.isFunction(strapi.models[model.toLowerCase()][fn])) {
|
|
||||||
self.on(key, strapi.models[model.toLowerCase()][fn]);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
};
|
|
||||||
|
|
||||||
const schema = mongoose.Schema(loadedModel.attributes);
|
const schema = mongoose.Schema(loadedModel);
|
||||||
|
|
||||||
console.log(schema);
|
|
||||||
|
|
||||||
global[globalName] = mongoose.model(globalName, schema);;
|
global[globalName] = mongoose.model(globalName, schema);;
|
||||||
|
|
||||||
@ -154,8 +154,7 @@ module.exports = function (strapi) {
|
|||||||
if (!_.isEmpty(verbose)) {
|
if (!_.isEmpty(verbose)) {
|
||||||
utilsModels.defineAssociations(globalName, definition, details, name);
|
utilsModels.defineAssociations(globalName, definition, details, name);
|
||||||
} else {
|
} else {
|
||||||
console.log(name, details);
|
loadedModel[name].type = utils(mongoose).convertType(details.type);
|
||||||
loadedModel[name].type = utils.convertType(details.type);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
switch (verbose) {
|
switch (verbose) {
|
||||||
|
|||||||
@ -7,12 +7,14 @@
|
|||||||
// Public node modules.
|
// Public node modules.
|
||||||
const _ = require('lodash');
|
const _ = require('lodash');
|
||||||
|
|
||||||
module.exports = (mongoose) => {
|
module.exports = mongoose => {
|
||||||
const Decimal = require('mongoose-double').loadType(mongoose);
|
require('mongoose-double')(mongoose);
|
||||||
const Float = require('mongoose-float').loadType(mongoose);
|
require('mongoose-float').loadType(mongoose);
|
||||||
|
|
||||||
|
const SchemaTypes = mongoose.Schema.Types;
|
||||||
|
|
||||||
return {
|
return {
|
||||||
convertType: (mongooseType) => {
|
convertType: mongooseType => {
|
||||||
switch (mongooseType.toLowerCase()) {
|
switch (mongooseType.toLowerCase()) {
|
||||||
case 'string':
|
case 'string':
|
||||||
case 'text':
|
case 'text':
|
||||||
@ -21,9 +23,9 @@ module.exports = (mongoose) => {
|
|||||||
case 'biginteger':
|
case 'biginteger':
|
||||||
return 'Number'
|
return 'Number'
|
||||||
case 'float':
|
case 'float':
|
||||||
return Float;
|
return SchemaTypes.Float;
|
||||||
case 'decimal':
|
case 'decimal':
|
||||||
return Decimal;
|
return SchemaTypes.Double;
|
||||||
case 'date':
|
case 'date':
|
||||||
case 'time':
|
case 'time':
|
||||||
case 'datetime':
|
case 'datetime':
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user