Advertisement
Guest User

Untitled

a guest
Jul 12th, 2017
75
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.25 KB | None | 0 0
  1. var eventDataSchema = new Schema({
  2. _id : Number,
  3. notes : {type: String, required: true},
  4. start_date : {type: Date, required: true},
  5. end_date : {type: Date, required: true},
  6. }, {
  7. id : false,
  8. collection : 'event-data'
  9. });
  10. eventDataSchema.plugin(AutoIncrement);
  11.  
  12. var EventData = mongoose.model('EventData', eventDataSchema);
  13.  
  14. router.get('/data', function(req, res){
  15. EventData.find({}, function(err, data){
  16. if (err) {
  17. console.error('Error occured');
  18. }
  19. res.send(data);
  20. });
  21. });
  22.  
  23. var userSchema = new Schema({
  24. user: { type: String, required: true, trim: true },
  25. password: { type: String, required: true, trim: true },
  26. events: [{
  27. notes: { type: String,required: true, trim: true },
  28. start_date: { type: Date,required: true },
  29. end_date: { type: Date,required: true }
  30. }]
  31. }
  32. userSchema.plugin(AutoIncrement);
  33. var userSchema = mongoose.model('userSchema', userSchema);
  34. });
  35.  
  36. var userSchema = new Schema({
  37. user: { type: String, required: true, trim: true },
  38. password: { type: String, required: true, trim: true },
  39. events: {type: mongoose.Schema.Types.ObjectId, ref: 'EventData' }
  40.  
  41. userSchema.plugin(AutoIncrement);
  42. module.exports = mongoose.model('userSchema', userSchema);
  43. });
  44.  
  45. var eventDataSchema = new Schema({
  46. notes: { type: 'string',required: true, trim: true },
  47. start_date: { type: Date,required: true },
  48. end_date: { type: Date,required: true }
  49. }
  50. eventDataSchema.plugin(AutoIncrement);
  51. module.exports = mongoose.model('EventData', eventDataSchema);
  52. });
  53.  
  54. var eventSchema = require('./eventSchema');
  55. var userSchema = require('./userSchema');
  56.  
  57. var populate = [{
  58. path: 'events',
  59. model: 'EventData',
  60. select: '_id notes start_dat end_date'
  61. }];
  62.  
  63. var find = function (query) {
  64. return userSchema.find(query).populate(populate).exec();
  65. }
  66. console.log(find());
  67.  
  68. {
  69. _id:cfgvhbjnkmkdcfxghgjklxnmbxhdhjxjhjhgx,
  70. user: John Doe,
  71. password: 123,
  72. events: [ { _id: 1gfye56785g3ycgevhxeftx568765egcd,
  73. notes: Event A,
  74. start_date: 1/1/01,
  75. end_date: 1/1/01
  76. } ]
  77.  
  78. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement