schema-comment.js 775 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. var Schema = require('mongoose').Schema;
  2. const commentSchema = new Schema({
  3. page: {
  4. type: String,
  5. required: true,
  6. trim: true,
  7. maxlength: 100,
  8. },
  9. name: {
  10. type: String,
  11. required: true,
  12. trim: true,
  13. maxlength: 100
  14. },
  15. email: {
  16. type: String,
  17. required: true,
  18. trim: true,
  19. lowercase: true,
  20. validate: {
  21. validator: function (v) {
  22. return /^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(v);
  23. },
  24. message: props => `${props.value} is not a valid email address!`
  25. }
  26. },
  27. comment: {
  28. type: String,
  29. required: true,
  30. trim: true,
  31. maxlength: 1000
  32. },
  33. createdAt: {
  34. type: Date,
  35. default: Date.now
  36. },
  37. approved: {
  38. type: Boolean,
  39. default: false
  40. }
  41. });
  42. module.exports = commentSchema;