user.js 721 B

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. const mongoose = require('mongoose');
  2. const { Schema, model } = mongoose;
  3. const gravatar = require('gravatar');
  4. mongoose.Types.ObjectId.isValid();
  5. const userSchema = new Schema(
  6. {
  7. name: {
  8. type: String,
  9. default: null,
  10. },
  11. lastName: {
  12. type: String,
  13. default: null,
  14. },
  15. number: {
  16. type: String,
  17. required: [true, 'Number required'],
  18. unique: true,
  19. min: 8,
  20. max: 14,
  21. },
  22. avatarUrl: {
  23. type: String,
  24. default: function () {
  25. return gravatar.url(this.email, { s: '250' }, true);
  26. },
  27. },
  28. token: {
  29. type: String,
  30. default: null,
  31. },
  32. code: {
  33. type: String,
  34. default: null,
  35. },
  36. },
  37. { timestamps: true }
  38. );
  39. const User = model('user', userSchema);
  40. module.exports = User;