Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- schemas
- message.ts
- user.ts
- messageSchema.post("remove", function(message) {
- User.findById(message.user, function (err, user) {
- user.messages.pull(message);
- user.save();
- });
- }
- import { Schema } from "mongoose";
- const User = require('./user');
- export const messageSchema: Schema = new Schema({
- createdAt: Date,
- content: {type: String, required: true},
- user: {type: Schema.Types.ObjectId, ref: 'User'}
- });
- messageSchema.pre("save", function(next) {
- if (!this.createdAt) {
- this.createdAt = new Date();
- }
- next();
- });
- messageSchema.post("remove", function(message) {
- User.findById(message.user, function (err, user) {
- user.messages.pull(message);
- user.save();
- });
- });
- import { Schema } from "mongoose";
- const mongooseUniqueValidator = require('mongoose-unique-validator');
- export const userSchema: Schema = new Schema({
- createdAt: Date,
- firstName: {type: String, required: true},
- lastName: {type: String, required: true},
- password: {type: String, required: true},
- email: {type: String, required: true, unique: true},
- messages: [{type: Schema.Types.ObjectId, ref: 'Message'}]
- });
- userSchema.plugin(mongooseUniqueValidator);
- userSchema.pre("save", function(next) {
- if (!this.createdAt) {
- this.createdAt = new Date();
- }
- next();
- });
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement