summaryrefslogtreecommitdiffstats
path: root/common/src/main/webapp/usageguide/appserver/node_modules/node-restful/examples/notes/models/note.js
blob: b62861a432077076cfd7f8b10a3d41e9a27350ed (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
var restful = require('../../../'),
    mongoose = require('mongoose'),
    User = require('./user');

var validateUser = function(req, res, next) {
  console.log("Add User");
  if (req.body.creator) {
    User.Obj.findById(req.body.creator, function(err, model) {
      if (!model) {
        return next(restful.objectNotFound());
      }
      next();
    });
  } 
  next(); // Required, so error later
}

var Note = new restful.Model({
  title: "note",
  methods: ['get', 'delete', { type: 'post', before: validateUser }, { type: 'put', before: validateUser }],
  schema: mongoose.Schema({
    title: { type: 'string', required: true},
    body: { type: 'string', required: true},
    creator: { type: 'ObjectId', ref: 'user', require: true},
  }),
});

exports = module.exports = Note;