Advertisement
Guest User

Untitled

a guest
Nov 16th, 2016
99
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.77 KB | None | 0 0
  1. var Video = new mongoose.Schema({
  2. user : {type: mongoose.Schema.Types.ObjectId, ref: 'User'},
  3. status : {type: String, default: 'Active'},
  4. recycled : {type: Number, default: 0}
  5. });
  6.  
  7. var User = new mongoose.Schema({
  8. email : {type: String, unique: true, lowercase: true},
  9. password: {type: String, select: false},
  10. status : {type: String, default: 'Active'},
  11. recycled : {type: Number, default: 0}
  12. )};
  13.  
  14. var condition = {
  15. recycled: {$ne: 1},
  16. status : 'Active'
  17. }
  18.  
  19. var _pageNumber = req.body.pageNumber,
  20. _pageSize = req.body.limit,
  21.  
  22. condition = {
  23. recycled: {$ne: 1},
  24. status : 'Active'
  25. },
  26.  
  27. var populateQuery = [
  28. {
  29. "path": "user",
  30. model : 'User',
  31. match : {
  32. recycled: {$ne: 1}
  33. }
  34. }
  35. // some other models populated...
  36. ];
  37.  
  38. Video.aggregate(
  39. [
  40. {$match: condition},
  41. {$sort: sort},
  42. {$skip: (_pageNumber > 0 ? ((_pageNumber - 1) * _pageSize) : 0)},
  43. {$limit: _pageSize}
  44. ],
  45. function (err, results) {
  46. if (err) return next(err);
  47.  
  48. Video.populate(results, populateQuery,
  49. function (err, results) {
  50. if (err) throw err;
  51.  
  52. return res.status(200).send({
  53. message : 'listOk',
  54. videos : results,
  55. pageNumber: _pageNumber
  56. });
  57. )
  58. });
  59.  
  60. var condition = {
  61. recycled: {$ne: 1},
  62. status : 'Active',
  63. 'user' : {$ne: null} or something like 'videos.user' : {$ne: null}
  64. }
  65.  
  66. var populateQuery = [
  67. {
  68. "path": "user",
  69. model : 'User',
  70. match : {
  71. recycled : {$ne: 1},
  72. "videos.user": {$ne: null}
  73. }
  74. }
  75. ]
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement