12345678910111213141516171819202122232425262728293031323334 |
- import { Schema, model, models } from 'mongoose';
- import { IPerson } from '../utils/interface/personInterface';
-
- const PersonSchema = new Schema<IPerson>({
- name: {
- type: String,
- required: [true, 'Please provide a name.'],
- maxlength: [60, 'Name cannot be more than 60 characters'],
- trim: true,
- },
- age: {
- type: Number,
- required: [true, 'Please provide an age.'],
- validate(value: number) {
- if (value < 0) {
- throw new Error('Age must be a postive number');
- }
- },
- },
- gender: {
- type: String,
- required: [true, 'Please provide a gender.'],
- trim: true,
- },
- customID: {
- type: String,
- required: true,
- unique: true,
- },
- });
-
- const Person = models.Person || model<IPerson>('Person', PersonSchema);
-
- module.exports = Person;
|