Guest User

Untitled

a guest
Mar 16th, 2018
100
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.77 KB | None | 0 0
  1. var userSchema = new Schema({
  2. email: String,
  3. password: String
  4. });
  5. var User = mongoose.model('User', userSchema);
  6. module.exports = User;
  7.  
  8. var postSchema = new Schema({
  9. user_id: {
  10. type: Schema.ObjectId,
  11. ref: 'User'
  12. },
  13. group_id: {
  14. type: Schema.ObjectId,
  15. ref: 'Group'
  16. },
  17. msg: String
  18. });
  19.  
  20. var groupSchema = new Schema({
  21. name: String
  22. });
  23.  
  24. var newPost = new Post();
  25. Group.findOne({"_id":req.body.group}, function(err, group){
  26. if (err) res.json(err);
  27. else {
  28. newPost.msg = req.body.msg;
  29. newPost.user_id = req.user; //from cookie using passport.js
  30. newPost.group_id = group._id;
  31. console.log(newPost);
  32. }
  33.  
  34. });
  35.  
  36. <form action="/post_add" method="POST">
  37. <label for="msg">Message:</label><br>
  38. <textarea name="msg" id="msg" cols="30" rows="10"></textarea>
  39. <label>Select group:</label>
  40. <select name="group">
  41. {% for group in groups %}
  42. <option value="{{group.id}}">{{group.name}}</option>
  43. {% endfor %}
  44. </select>
  45. <input type="submit" value="Write!" />
  46. </form>
  47.  
  48. var mongoose = require('mongoose');
  49. var Post = mongoose.model('Post');
  50.  
  51. var express = require('express');
  52. var router = express.Router();
  53.  
  54. router.post('/post_add', function (req, res, next) {
  55. var body = req.body;
  56. var user = req.user;
  57.  
  58. var post = new Post({
  59. user_id: user._id,
  60. group_id: body.group,
  61. msg: body.msg
  62. });
  63. post.save(function (err) {
  64. if (err) { // failed
  65. console.error(err);
  66. res.redirect('/error');
  67. } else { // success
  68. res.redirect('/posts');
  69. }
  70. });
  71. });
  72.  
  73. module.exports = router;
Add Comment
Please, Sign In to add comment