2.0.9 • Published 1 year ago
@pecoding/mongoose-schema v2.0.9
Mongoose Schema Central Repository
This project provides a centralized collection of Mongoose schemas used across various Node.js projects within XXX. It ensures consistency and reusability of schema definitions, minimizing duplication and simplifying maintenance across the company’s projects.
Purpose
In many Node.js projects within the company, the same data models are reused. To ensure consistency and maintainability, this package centralizes schema definitions, making it easier to update and manage models across all relevant projects.
Installation
Install the package via npm:
npm install @pecoding/mongoose-schemaUsage
This package exports multiple Mongoose models, schemas, and validation functions. Below is a summary of the available exports and their intended usage.
Exported Models and Schemas
Agents
agents: Mongoose model for theagentscollection.agent_schema: Schema definition foragents.validationAgent: Function to validateagentsdata.validateSearchAgent: Function to validate search parameters for agents.validationUpAgent: Validation function for updatingagentsdata.
Config Agents
config_agents: Mongoose model for theconfig_agentscollection.config_agents_schema: Schema definition forconfig_agents.
OAuth
oauths: Mongoose model for theoauthscollection.oauth_schema: Schema definition foroauths.
Games Lists
games_lists: Mongoose model for thegame_listscollection.game_custom_lists: Mongoose model for thegame_custom_listscollection.game_list_schema: Schema definition forgame_lists.game_custom_schema: Schema definition forgame_custom_lists.
Lunchings
lunchings: Mongoose model for thelunchingscollection.lunching_schema: Schema definition forlunchings.
Announcements
announcements: Mongoose model for theannouncementscollection.announcement_schema: Schema definition forannouncements.
Maintenances
maintenances: Mongoose model for themaintenancescollection.maintenance_schema: Schema definition formaintenances.
Members
members: Mongoose model for thememberscollection.member_schema: Schema definition formembers.validationMember: Function to validatememberdata.validateSearchUser: Function to validate search parameters for members.validationupMember: Validation function for updatingmemberdata.validationpass: Validation function for member passwords.
Daily Reports
dailyReportSimples: Mongoose model for thedailyReportSimplescollection.dailyReportsProducts: Mongoose model fordailyReportSimples.dailyReports: Mongoose Mongoose model for thedailyReportscollection.dailyReportSimples_schema: Schema definition fordailyReportSimples.dailyReportsProducts_schema: Schema definition fordailyReportSimples.dailyReports: Schema definition fordailyReports.
Reports
reports: Mongoose model for thereportscollection.report_schema: Schema definition forreports.
Importing the schema
const mongoose = require('mongoose');
const { members, validationMember, agents } = require('@pecoding/mongoose-schema');
// Connect to MongoDB
mongoose.connect('mongodb://localhost:27017/mydatabase', {
useNewUrlParser: true,
useUnifiedTopology: true
})
.then(() => console.log('MongoDB connected!'))
.catch((err) => console.error('Connection error:', err));
// Example usage of the members model
const newMember = new members({
name: 'Jane Doe',
email: 'jane.doe@example.com',
age: 28
});
// Validate the member data before saving
if (validationMember(newMember)) {
newMember.save()
.then(member => console.log('Member saved:', member))
.catch(err => console.error('Error saving member:', err));
} else {
console.error('Member validation failed');
}