const mongoose = require('mongoose').set('debug', false) const Schema = mongoose.Schema; const tools = require('../tools/general'); mongoose.Promise = global.Promise; mongoose.level = "F"; // Resolving error Unknown modifier: $pushAll mongoose.plugin(schema => { schema.options.usePushEach = true }); const GallerySchema = new Schema({ idapp: { type: String, }, author_username: { type: String, }, title: { type: String, }, directory: { type: String, }, list: [ { imagefile: { type: String }, order: { type: Number }, alt: { type: String }, description: { type: String } } ] }); GallerySchema.statics.getFieldsForSearch = function () { return [{ field: 'title', type: tools.FieldType.string }] }; GallerySchema.statics.executeQueryTable = function (idapp, params) { params.fieldsearch = this.getFieldsForSearch(); return tools.executeQueryTable(this, idapp, params); }; GallerySchema.statics.findAllIdApp = async function (idapp) { const Gallery = this; const myfind = { idapp }; return await Gallery.find(myfind).lean(); }; const Gallery = mongoose.model('Gallery', GallerySchema); Gallery.createIndexes() .then(() => { }) .catch((err) => { throw err; }); module.exports = { Gallery };